Whether you’re redesigning an older app or creating a new one, consider approaching the job in this way:
Throughout the process, be prepared to defy precedent, question assumptions, and let a focus on content and functionality motivate every design decision.(敢于挑战先例,只关注内容和功能。)
Here are some ways to make sure that your designs elevate functionality and defer to the user’s content.( the user’s content is at its heart. 内容最重要!)
Reconsider visual indicators of physicality and realism.(Bezels, gradients, and drop shadows sometimes lead to heavier UI elements that can overpower or compete with the content. Instead, focus on the content and let the UI play a supporting role. 关注内容,让控件起辅助作用)
Let translucent(半透明) UI elements hint at the content behind them. (Translucent elements—such as Control Center—provide context, help users see that more content is available, and can signal transience. )
Providing clarity is another way to ensure that content is** paramount** in your app. Here are some ways to make the most important content and functionality clear and easy to interact with.
(Negative space, in art, is the space around and between the subject(s) of an image. Negative space may be most evident when the space around a subject, not the subject itself, forms an interesting or artistically relevant shape, and such space occasionally is used to artistic effect as the “real” subject of an image. )From wikipedia.
Let color simplify the UI. (A key color—such as yellow in Notes—highlights important state information and subtly indicates interactivity. 单一化的颜色可以强调某些重要的内容。)
Ensure legibility by using the system font.( San Francisco (the iOS system font) works with Dynamic Type to automatically adjust letter spacing and line height so that text is easy to read and looks great at every size. 使用系统字体可以确保清晰度。)
Embrace borderless buttons.(使用没有边框的按钮。)(By default, all bar buttons are borderless. In content areas, a borderless button uses context, color, and a call-to-action title to indicate interactivity.)
iOS often displays content in distinct layers that convey hierarchy and position, and that help users understand the relationships among onscreen objects.
Calendar uses enhanced transitions to give users a sense of hierarchy and depth as they move between viewing years, months, and days. In the scrolling year view shown here, users can instantly see today’s date and perform other calendar tasks.
This part is talking about how IOS designed to make user focus on the content. So whenever designing what kinds of app, we must pay attention to if the user can easy find tha main content. What’s more, we must not make UI element too gaudy. Easy and clear are the most important part in an IOS app.
The UI elements provided by UIKit fall into four broad categories:
Here’s an example of how views and view controllers can combine to present the UI of an iOS app.
NOTE
An iOS app includes a window. But—unlike a window in a computer app—an iOS window has no visible parts and it can’t be moved to another location on the display. Most iOS apps contain only one window; apps that support an external display can have more than one.
This part is talking about the anatomy of IOS elements. We should put it in our heart whenever we design a view in an app.
iOS defines two size classes: regular and compact. The regular size class is associated with expansive space and the compact size class is associated with constrained space. To characterize a display environment, you specify a horizontal size class and a vertical size class. As you might guess, an iOS device can use one set of size classes for portrait orientation and a different set of size classes for landscape.
NOTE
Within a size class, continue to use Auto Layout to make small layout adjustments, such as stretching or condensing content. To learn more about using Auto Layout, see Auto layout
**Be straightforward if your app runs in only one orientation. **People expect to use your app in different orientations, and it’s best when you can fulfill that expectation. But if it’s essential that your app run in only one orientation, you should:
Avoid displaying a UI element that tells people to rotate the device. Running in the supported orientation clearly tells people to rotate the device, if required, without adding unnecessary clutter to the UI.
Support both variants of an orientation. For example, if an app runs only in landscape, people should be able to use it whether they’re holding the device with the Home button on the right or on the left. And if people rotate the device 180 degrees while using the app, it’s best if the app responds by rotating its content 180 degrees.
* If your app interprets changes in device orientation as user input, handle rotation in app-specific ways. **For example, a game that lets people move game pieces by rotating the device can’t respond to device rotation by rotating the screen. In a case like this, you should launch in both variants of the required orientation and allow people to switch between the variants until they start the main task of the app. As soon as people begin the main task, begin responding to device movement in app-specific ways.
Make it easy to focus on the main task by elevating important content or functionality.
**Use visual weigth and balance to show users the relative importance of onscreen elements.**Large items catch the eye and tend to appear more important than smaller ones.