Custom Controls in iOS

Feb 21 2017 · Video Course (2 hrs, 5 mins) · Intermediate

Custom controls are an important part of developing apps for iOS, allowing you to develop engaging user experiences, while achieving great code separability and reuse. When the Apple-provided controls don’t quite give you what you want, then creating your own custom controls is a great option, and it isn’t nearly as scary as it first sounds! Learn how to create custom controls for iOS by taking a look at three different approaches covered in this series. First you’ll discover how you can compose UIKit components to build your own control, before moving on to using Core Animation to create controls with more visual complexity. Finally you’ll see how you can use Core Graphics to “draw” the appearance of controls yourself. Along the way you’ll learn how to handle user interaction, interface builder integration and dynamic frameworks.


  • Swift 3, iOS 10, Xcode 8


7:24 Free

Find out what's covered in our Custom Controls in iOS video course!


Learn how to compose UIKit components to build your first custom control, all within a playground.


Learn about the interaction options available for custom controls, enable user interaction on the Deluxe Button, and test in a playground live view.


Learn how to properly integrate your custom controls with Interface Builder with IBInspectable and IBDesignable, massively improving the design time experience.


Learn how to create complex custom controls using Core Animation layers and begin building a Three Ring Control.


Dive deep into Core Animation layers to put the finishing touches on the ring layer of your custom control by adding a shadow.


Learn how to sprinkle a little bit of animation magic onto your three ring custom control.


Finish up the animation for the three ring custom control.


Learn how to move a control into a dynamic framework, making it a self-contained component which can be reused across multiple projects.


Learn how to employ Core Image and Core Graphics to draw the interface of the Colorgon color picker.


Learn how to build a custom gesture recognizer for the Colorgon color picker.




Review what you've learned in this course and get some hints and tips on how to approach building your own custom controls.


Version history

iOS 10, Swift 3, Xcode 8 (Selected)

Feb 21 2017

iOS 9, Swift 2, Xcode 7

Sep 1 2015