New UIListLayout Flex Features [Beta]

Not OP, but I am working on a game that has a ‘notepad’ feature, while right now it looks nice enough with UIListLayout, but with flexible grids, this make the layout more interactive and less plain. It would like a billboard or some sort.

Flexible grids will unlock further possibilities to many different layouts that were deemed difficult to replicate or maintain in the long term, such as the collage grid (procedural grids) found in photo galleries. (see this article). Enforcing all grids to be the same would end up in crop, which may not be nice since it would’ve affected the composition and framing of each picture.

Flexible grids will be definitely useful for creating dashboard layouts, or even creating a further advanced shop layout to reach greater monetization. You can imagine how awesome a shop UI will look like with grids like the examples below. This is possible right now, but generally a pain to work with as it involves multiple-level nesting with different UI list layouts, and probably code so it will compensate different aspect ratios.

See examples of flexbox grids here:



Those bento boxes are indeed gorgeous and stunning to look at.

5 Likes

I love it, cant wait till this is out client-side too so we can easily make responsive UIs.

This is an issue that was happening long before any of the flex features were added. This sort of issue primarily happens with surface guis (I’m using surface guis in the clip that i have provided before) but I’m somewhat sure this could happen to screen guis if you were to set the game resolution to something high enough. Here’s a test place for this issue.
SurfaceGUI_ButtonResolution Hitbox issue.rbxl (65.5 KB)
There’s a text button on the middle of that gray box and you’ll quickly notice that the button is not clickable at all. Lowering the resolution (with pixels per stud) would make it actually clickable however only in a specific area of it while some other portions of it would still be not clickable at all. This issue affects all ui hitboxes but some more than others. Scrolling bar for example cannot even be held and dragged at all if they’re too thin.

2 Likes

does this finally mean my ui wont clip the living heck out of my screen

1 Like

The flexible grid example you posted is theoretically completely possible to create using multiple nested flex enabled UIListLayouts, but it was honestly really complex and probably won’t be very dynamic. But if you’re looking for a static layout it totally works!

Edit: Just did it



360c7ce5079ac82d6bee473b78112fca

6 Likes

I know, but I am looking for procedural grids mostly, so it really needs to be dynamic. Cool example though.

Edit: While making this is possible in Studio, it would be somewhat messy to create this in code like with Roact given the nesting here, it would be better if it does not have any nesting.

I read “Flexbox” and I upvoted!

Finally something that is Flexbox related.

2 Likes

Any estimated date for when this will be released? or at least implemented on the Roblox Client

Right now Im working on a project, and I wanna see if I can use this or look for other solutions. The game should be released in 2-3 months and I dont want my gui not working yet on release

1 Like

This is amazing, it’s gonna help me in a lot of my UIs. Thanks!

2 Likes

OH MY FRICKING GOD THIS IS AMAZING!!! :astonished: :astonished: :astonished:

1 Like

gotta say roblox earned a W here

2 Likes

I don’t know why but i do not see the beta option “UIListLayout Flex Features”

2 Likes

Hey! I’m experimenting using this inside of my plugin UIs.

It doesn’t seem to lay out correctly on first load, but after scaling, it’s ok:

Specifically, this TextArea instance, which is set to Fill, has an AbsoluteSize.X of 0 on first load, which causes the incorrect appearance.

image

In addition, there seems to sometimes be a frame of latency in updating this size, which you can see if you pay attention to the right hand side of the text boxes in the video. The gradient fails to keep pace with the text, causing blips. I wouldn’t have expected this layout to take multiple frames given it’s trivial.

6 Likes

Update your studio using the installer, relaunch the studio and it should hopefully be there!

2 Likes

it autoupdates on launch each time, i do not see the option.
i see this update in the notifications, this is how i found about this post by clicking on it
my studio version is Version 0.602.352.6020380 (64bit)

2 Likes

I don’t see the wraps thing anymore i used it now my ui is broken because it dissappeared. Did they remove it?
Edit: i disabled the beta feature and then enabled it again it’s back sorry lol

2 Likes

OK thanks for the repro file, it seems to be a bug that only happens if PixelsPerStud is too large. I created a bug ticket and will let you know when we have an update!

4 Likes

Interesting, thanks for reporting! I think this is related to the multiple-frame update issue, which should be fixed soon!

Hmm can you share or DM me what OS you are using? Also could you try logging into Studio with a different account and checking if you see the “UIListLayout Flex Features” option? Studio v602 and later should have this option, so you have the correct version.

2 Likes

When join game UI Layout didn’t Apply

Game - Roblox Studio (gyazo.com)

Properties :
image

4 Likes

The feature is still in Beta, meaning it it’s only going to appear in Studio.