Skip to Main Content
Learning Swift, 3rd Edition
book

Learning Swift, 3rd Edition

by Jonathon Manning, Paris Buttfield-Addison, Tim Nugent
March 2018
Beginner content levelBeginner
378 pages
8h 45m
English
O'Reilly Media, Inc.
Content preview from Learning Swift, 3rd Edition

Chapter 12. Theming and Sharing Selfiegram

As it currently stands our app is in pretty good shape from a functionality perspective. Everything works properly and the interface of the app is solid—it is, however, a bit dull looking. While the default UIKit elements work very well and provide a consistent appearance with the Apple-provided apps, they aren’t what we are after. We want our app to stand out.

There are loads of different ways we can go about this, but we are going to use themes to customize the appearance of our app. Themes allow us to design a universal appearance we want shared by each and every view in Selfiegram and have this automatically applied across the app. Our theme will be defined using the UIAppearance class. This class has a variety of different methods that let us dive into the guts of a view and set its appearance according to how we want it to look. Once this is done this theme will be applied to the entire view hierarchy, giving us a consistent interface for the whole app. As an added bonus, if we ever want to update the theming of our app all we need to do is modify the theme code and it will propagate out to the entire app at once, saving oodles of time.

Note

The UIAppearance class is a proxy object that exists on most view subclasses. It’s designed to work on a class and not an instance, but we interface with it in the same fashion as if it were an instance. This means we won’t be telling specific items in our interface, such as a particular button, ...

Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Start your free trial

You might also like

Learning To Program With Swift

Learning To Program With Swift

T. Rogers

Publisher Resources

ISBN: 9781491987568Errata Page