AutomaticSize does not refresh itself when the object it is updating is set to render.
In this first example, the white modal is set to have AutomaticSize enabled based off of a UIListLayout. It is designed to resize with the “Confirm Release” text label and the buttons “Cancel” and “Confirm”. This won’t update itself until something manually updates the state of the UI (such as a button position changing or mouse moving over it)
In this second example, we are using AutomaticCanvasSize for this ScrollingFrame. The contents are populated while the whole frame is set to not be visible. You can also tell in one of the tiles there is a vertical thin black line with some text in it that says “Ride”; this is also using AutomaticSize X. As soon as the tile is clicked, you can see the scrolling frame update its canvas size.
These small issues effectively prevent us from using AutomaticSize in our game.
Hey @Usering , we are currently working on fixing this issue. If possible, do you mind providing us with a place file or rbxm file where we can reproduce the issue also do some testings within? Thanks.
Any updates on the status of this? I can also provide some samples of where AutomaticSize does not update on property change from None to Y and back. See the following gif: https://i.imgur.com/JGQhTAM.gif
In the gif, the chevron on the top right triggers a change to the AutomaticSize of the scrolling frame containing the row items. In-fact, both AutomaticSize and AutomaticCanvasSize are both changed here.
Hi @Aurified , sorry to hear that it is still not working for you. Our recent update is a little different from the AutomaticCanvasSize issue, we will be taking a further looking at the case you provided.
This issue has still not been fully addressed.
When text is set before an object with AutomaticSize enabled is made visible, it will not update the size when it becomes visible.
AutomaticSize is a feature that has a lot of potential and it’s a shame to see it released broken and never fixed fully.
Here is a video of a case we are using it. You can see the text labels are set to be a width of 0 pixels, and have AutomaticSize set to “X”. When I update its state by toggling a property like RichText it does update. It needs to be automatic.
This issue still keeps happening. The scroll bar doesn’t seem to appear and function until a child in the frame is made visible/not visible or until VerticalScrollBarInset is changed to “ScrollBar”. I really hope this issue is investigated and fixed soon, I don’t want to write extra code or redo existing one just to bypass this issue.
@CharlieGordonnn While you’re looking into it, I’d appreciate if you’d also have fixed the padding with scale for uilistlayouts because, well, see for yourself:
Looks like we got a Studio update, so I’m guessing a flag was flipped for this.
Doesn’t seem to be fully resolved. We use automatic size + ui list/grid layout. The game starts with this frame hidden and then made visible. You can see they have to have their properties changes to be recalculated. These frames have their size set to 0, so they should have no default or constrained size.
The “Core” frame needs to be hidden. All other frames have to be set to be visible. Toggle visibility on core to see it. automatic size grid repro.rbxl (35.1 KB)
I’m also noticing problems with AutomaticSize. A couple months ago I coded a context (hover) menu in my game with AutomaticSize, and what previously worked no longer works and behaves very weirdly. Had to disable it.
I can as well confirm this occurs with elements that are not visible all the time.
I coded and designed a context menu, worked fine, but after I logged back into the place and made it visible the alignment of the contents was all messed up.
The only workaround I have is to avoid using AutomaticSize, at least until it gets fixed, and instead implement your own solution. AutomaticSize (along with AutomaticCanvasSize) just seems to be very buggy right now and isn’t worth the hassle, not to mention mixing it with Scale has some undesired effects.
I managed to get it to work again by making all Guis inside invisible menus transparent rather than ticking Visible=False. Bit of a code smell, but it works for now.