how to make UILabel autosize text in storyboard (or interface builder), NOT programmatically
Solution 1
On any element in Interface Builder you can select the element and hit...
Editor > Size to Fit Content (keyboard shortcut: CMD+=)
This will do a "sizeToFit" on the selected element. Labels will fit their text size, image view will resize to the image size, etc...
Solution 2
In Xcode 6.1, I had to set Content Compression Resistance Priority to a higher value, likely because I have other constraints that were conflicting, or causing the sizeToFit option to be disabled.
Before: After:
Solution 3
For the text label:
Set Lines to 0
Set Height to Greater than or equal to 30 (or other value)
Now the height will be adjusted based on the lines number.
Doug Null
I'm a software inventor, architect, and coder around the California Silicon Valley, with over 40 years of software direction and engineering experience.
Updated on July 08, 2022Comments
-
Doug Null almost 2 years
Every time I click-and-drag a UILabel to storyboard, and then add text to Text field, the text is cut off, so I then have to click-and-drag the UILabel to stretch it big enough so that the text appears.
I can't figure out how to make the UILabel automatically get big enough to fit the text.
This would save time while designing new views.