I’m trying to use code to set the CellSize of a GridLayout so sizes are evenly sized based on devices, and its a lot easier to work with offset over scale when trying to maintain an even padding around edges. This is my current code
local Frame = script.Parent
local Item = script:WaitForChild('Item')
local GridLayout = Frame:WaitForChild('UIGridLayout')
local xSize, ySize = Frame.AbsoluteSize.X, Frame.AbsoluteSize.Y
local Padding = GridLayout.CellPadding.X.Offset
local Cells = 9
local TotalPadding = Padding * (Cells - 1)
local CellSize = (xSize - TotalPadding) / Cells
GridLayout.CellSize = UDim2.new(0, CellSize, 0, CellSize)
for i = 1, Cells * 3 do
local NewItem = Item:Clone()
NewItem.Parent = Frame
end
And that produces this
However the padding between the left and right is not the same as the padding between top and bottom. I tried using UIPadding but I couldn’t figure out the math to get it even