Recently, studio added some useful little objects to help streamline and enrich the UI development process, including ways to list items in spaced-out positions without coding it in through the use of UIGridLayout, ListLayout etc.
Within the GridLayout, you can set how big you want each cell to be in UDim2, including a Scale and Offset size property. The only issue is, since this is oft placed into a ScrollingCanvas object, they can become stretched and distorted when the CanvasSize changes size.
This makes GridLayout objects imperfect and lacking when it comes to this use case.
I could get around it by manually checking how many pixels wide the canvas is and setting the cell X & Y size to that, but that defeats the purpose of UIGridLayout.
(v How it’s meant to look v - I had to fiddle around with the cellsize at runtime to find the best option, but the moment I add a new item to the list, I would have to manually find a new cellsize value.)
What would be really useful is, like with other Gui objects, having the ability to lock the Scale factor to XX/YY. That means I can have uniformly scaled cells that scale up with the canvas size with ease.
Then, in this use case, I could set the constraint to XX, so if my cell size were {0.5, 0, 0.5, 0}, it would be perfectly square with dimensions half that of the width of the canvas!