Ryan Poolos - Life Beyond Storyboards: Building your UI in code
Interface Builder can be great. Its easy to pick up and understand for beginners, can allow you to see what you're building live, and it can expose simple options on system views as checkboxes that you might not know without reading deep into the documentation. However, Interface Builder can't do everything and there are certain times you'd be better off without it. However, with almost all new material online from tutorials to books to sample code depending on Interface Builder, newcomers are sometimes not even aware they can use code for tasks left to Interface Builder. Even if they know programmatic UI is possible and want to know more, resources are hard to come by. This talk will start with a quick overview of the basics in UIKit. Then move into demonstrating common patterns in code you would typically setup in Interface Builder. We'll setup tableviews, stackviews, and buttons. We'll write our own Auto Layout to position our views on screen effectively. We'll transition to other viewControllers without segues. We will also look into some common scenarios where building something in code will be easier to maintain than in Interface Builder like theming or groups of content that may be reordered or added to. And we will look into some custom UI that must be written in code. Programmatically building your UI shouldn't be scary or insurmountable. It's a skill we will all need sooner or later for a unique aspect of our app that can't be done in Interface Builder. It may even be preferable for some people all the time.