Join Simon Allardice for an in-depth discussion in this video Transitioning to the iOS 7 UI model, part of iOS 7 App Development New Features.
When you look through Apple's own documentation for iOS 7, things like the Human Interface Guidelines or the iOS 7 Transition Guide. Or even Apple's videos on it, there are three words you're going to see again and again, deference, clarity, and depth. These are themes that had tremendous impact on a lot of the decisions, not only in iOS 7 itself, but in the redesign of the built-in applications. Here's the problem. If we're at the moment where the rubber meets the road. We're in the day to day battle of building iOS applications, it can be difficult to treat these words as measurable tasks we can accomplish.
After all, it's kind of easy to say my application is using arc, or my application is or is not using core data. Or this story board uses Auto layout and this one does not. But it's a lot more difficult to say something like, my application does or does not have clarity, or my app is full of deference. Now, we have to be careful not to underestimate these as buzzwords, hand wavey terms that they're only for UX designers because they're not. These are words that do have very specific meaning for creating a user interface that works well in iOS 7 and feels like it belongs there.
And it is a mistake for any developer to think that changes to iOS 7 are just some kind of skinning model. Where we've moved from one default visual style of a button to a different default visual style of a button, and we're done. No, there is a lot more to it than that. But, neither thankfully is it a whole new world. In iOS 7, we don't suddenly have a bunch of new frameworks and never before seen controls just to build a standard iOS app. It is still good old UI kit.
We use View Controllers, UI buttons, Table Views, Segmented Controls, Scroll Views, Sliders, Image Views, Picker Control. The usual suspects. And if you're using standard UI kit elements, you'll find many of them haven't changed their IPI at all. And the few that have, have actually gotten simpler. But, there are a few new pieces to pay attention to. There are a few new important properties, and there's some behaviors you might have taken for granted that just won't happen anymore.
So what's the best way to approach this? Well, a couple of core concepts are important first, and then specifics. But rather than me just take Apple's own words of deference, clarity, and depth, I'm going to take a slightly different approach here. And kind of keep bringing us around to those ideas as we go through all these. So I will start with a couple of general concepts. I'll first talk about use of space in a typical iOS user interface. And I'll talk about color, including a small change that has a huge impact on iOS 7 user interface controls.
After that, I'll go over to changes with working with text. And not just large amounts of text, but even the basic way that one word would be shown in a button or table some. And with those ideas covered, which impact everything we do, I'll then get into the specifics of UI kit. What do we need to be conscious of with view controllers, with basic controls, layout, table views, collection views. So first up, let's talk about use of space.
- Working with automated configuration in Xcode
- Using asset catalogs
- Understanding color and space in the iOS 7 UI
- Adding and debugging Auto Layout constraints
- Adding background fetch support