Swift version: 5.6
If you create any views in code – text views, buttons, labels, etc – you need to be careful how you add Auto Layout constraints to them. The reason for this is that iOS creates constraints for you that match the new view's size and position, and if you try to add your own constraints these will conflict and your app will break.
There are two solutions. First, don't add Auto Layout constraints to views created in code. Sound like a bad idea? That's because it is: like it or lump it, Auto Layout is something you want on your side. So, that leaves option two: tell iOS not to create Auto Layout constraints automatically, and that's done with this line of code:
yourView.translatesAutoresizingMaskIntoConstraints = false
SPONSORED Play is the first native iOS design tool created for designers and engineers. You can install Play for iOS and iPad today and sign up to check out the Beta of our macOS app with SwiftUI code export. We're also hiring engineers!
Sponsor Hacking with Swift and reach the world's largest Swift community!
Available from iOS 7.0 – see Hacking with Swift tutorial 6
This is part of the Swift Knowledge Base, a free, searchable collection of solutions for common iOS questions.
Link copied to your pasteboard.