Custom iOS Controls
Sam Kirchmeier
[email protected]
@skirchmeier
Monday, May 7, 12
Slide 2
Slide 2 text
Monday, May 7, 12
Slide 3
Slide 3 text
http://finalpass.com
Monday, May 7, 12
Slide 4
Slide 4 text
Monday, May 7, 12
Slide 5
Slide 5 text
Monday, May 7, 12
Slide 6
Slide 6 text
Monday, May 7, 12
Slide 7
Slide 7 text
Monday, May 7, 12
Slide 8
Slide 8 text
Topics
•Customizing UINavigationBar
•Customizing UIBarButtonItem
•Activity Indicator View
•Core Graphics
•Core Animation
•iOS 5 Features
Monday, May 7, 12
Slide 9
Slide 9 text
Linen
Monday, May 7, 12
Slide 10
Slide 10 text
Monday, May 7, 12
Slide 11
Slide 11 text
Monday, May 7, 12
Slide 12
Slide 12 text
Monday, May 7, 12
Slide 13
Slide 13 text
Monday, May 7, 12
Slide 14
Slide 14 text
Monday, May 7, 12
Slide 15
Slide 15 text
Monday, May 7, 12
Slide 16
Slide 16 text
[UIColor viewFlipsideBackgroundColor]
Monday, May 7, 12
Slide 17
Slide 17 text
UINavigationBar
Monday, May 7, 12
Slide 18
Slide 18 text
Options
•Subclass
•Category Method
•Method Swizzling
Monday, May 7, 12
Slide 19
Slide 19 text
Option #4
UIAppearance
CENSORED
Monday, May 7, 12
Slide 20
Slide 20 text
Monday, May 7, 12
Slide 21
Slide 21 text
Monday, May 7, 12
Slide 22
Slide 22 text
Subclass
•UINavigationController uses
UINavigationBar
Monday, May 7, 12
Slide 23
Slide 23 text
Category Method
•Collisions
•Broad impact
Monday, May 7, 12
Slide 24
Slide 24 text
Method Swizzling
•Can’t always swizzle
•Broad impact
•Apple has rejected apps that use
method_exchangeImplementations
Monday, May 7, 12
Slide 25
Slide 25 text
Subclass
Monday, May 7, 12
Slide 26
Slide 26 text
UIBarButtonItem
Monday, May 7, 12
Slide 27
Slide 27 text
Compromise
•Core Graphics is limited
•iOS 5 Core Image is limited
•Make the designer do it
Monday, May 7, 12
Slide 28
Slide 28 text
Monday, May 7, 12
Slide 29
Slide 29 text
Benefits
•Mostly device & resolution independent
•Stretchable without losing detail
•Works in iOS 4 & 5
Monday, May 7, 12
Slide 30
Slide 30 text
Ness
Monday, May 7, 12
Slide 31
Slide 31 text
Monday, May 7, 12
Slide 32
Slide 32 text
Monday, May 7, 12
Slide 33
Slide 33 text
Monday, May 7, 12
Slide 34
Slide 34 text
Monday, May 7, 12
Slide 35
Slide 35 text
iOS 5
•Lots of new UIKit features
•WWDC Video: “Customizing the
Appearance of UIKit Controls”
•https://developer.apple.com/videos/wwdc/
2011/
Monday, May 7, 12
Slide 36
Slide 36 text
https://github.com/livefront/linen
Monday, May 7, 12