Prototype and Design App Store Ready App In Interface Builder
Designers will learn how to prototype and design App Store ready app in Interface Builder and Developers will learn how to use @IBDesignable, @IBInspectable and Swift protocol extensions to implement an extendable UI library.
Firstly, we will open Xcode and start with a new iOS app project to demonstrate how to use @IBDesignable and @IBInspectable to implement customised UI elements in Xcode and use them in Interface Builder. After that, we will introduce an open source project IBAnimatable. We will install IBAnimatable using CocoaPods in the project above. Then we will live design customised UI, animations, and transitions in Interface Builder.
In the second part, we will take a further look at how to implement a flexible and extendable UI library using Swift protocol extensions. To demonstrate the power of Swift protocol extensions, we will integrate an existing UI library with IBAnimatable to add animation features. In our case, we use a big enough UI library called Material as an example. Then add animation capability for Material UI elements using Animatable protocol within IBAnimatable. We can use Swift protocol extensions to develop and extend any UI elements.
We will live code in Xcode and live design in Interface Builder during the entire talk. We will also use interactive slides made in Interface Builder. And display them within an iOS app on an iPad Pro.