Scrolling frame CanvasSize failing to work with scale, can't use Offset due to UI design

  1. What do you want to achieve? Keep it simple and clear!
    Making a scrolling frame that can scroll properly with a UIGridLayout that uses scale.

  2. What is the issue? Include screenshots / videos if possible!
    I am improving a team changer section of a main menu and I realised that I don’t have any more space to fit more than 6 teams onto the team changer, so I made a thing there if there is more than 6 teams in the scrolling frame, then the canvas size would change so that the next row can be shown. The only way I can do it is with offset, but that would mess up the menu design for different people and doing with scale would cause it to break.

What the UI looks with scale + more than 6 teams. 1920x1080 resolution.
e66001f40ca631a73118187e5a9b0c4f

What UI looks like with offset + more than 6 teams. 1920x1080 resolution.

Note that the original UI was designed on a smaller resolution since my Roblox studio tabs were making the viewport smaller.

  1. What solutions have you tried so far? Did you look for solutions on the Developer Hub?
    I have read a dev forum post about it but you can only do it with offset, which is not possible due to issues it will being to the UI design.

If you need anymore clarification, please do tell me.

Is the issue then that the scrolling frame cuts off part of what should be displayed? From my experience, with a scrolling frame and UIGridLayout you should be able to add icons/UI easily without having to adjust offset etc.

I don’t think you’ll be able to use scale because the UiGridLayout changes the CanvasSize, which in turn changes the size of the gui.

Yes, but I insert the teams and everything with a script, I don’t do it manually since it’ll be a hassle to do any improvements on it in the future.

Is there a way to use offset and still retain the automatic sizing that scale would have? Like getting the players’ viewport size and then using mathematical operations to size it?

I’m not sure if that is even possible.