## 1.5 導航(Navigation)
除非導航設計不合理,不然用戶應該明顯察覺不到應用中的導航體驗。導航設計應該能夠支撐你應用結構和目的卻又不分散用戶注意力。
廣義來說,導航主要有以下幾種類型,每個導航都有其適應的應用結構:
* 分層
* 扁平
* 內容或體驗驅動
在有層級結構的應用中,用戶在每個層級中都要選擇一項,直到到達目的層級。如果要切換到另一個目的層級,用戶必須回退一些層級,或者直接回到初始層級再次選擇。系統設置和郵箱應用在這方面是很好示范,可以參考他們。
[](https://developer.apple.com/library/ios/documentation/UserExperience/Conceptual/MobileHIG/Art/navigation_hierarchy.m4v)
**譯者注:**以上為視頻截圖,完整視頻可[點擊觀看](https://developer.apple.com/library/ios/documentation/UserExperience/Conceptual/MobileHIG/Art/navigation_hierarchy.m4v)。
在扁平信息架構的應用中,用戶可以從首頁目錄直接切換到另一個,因為所有的分類都可以從主屏直接訪問。音樂和App Store是兩個使用扁平結構的好例子。
[](https://developer.apple.com/library/ios/documentation/UserExperience/Conceptual/MobileHIG/Art/navigation_flat.m4v)
> **譯者注:**以上為視頻截圖,完整視頻可[點擊觀看](https://developer.apple.com/library/ios/documentation/UserExperience/Conceptual/MobileHIG/Art/navigation_flat.m4v)。
在內容或體驗驅動的信息架構應用中,導航也會根據內容或體驗來設計。例如,在閱讀一本電子書時,用戶會一頁接一頁的進行閱讀,或者直接從目錄中選中某一個指定的頁碼;同樣,在游戲中導航也是體驗的重要組成部分。
[](https://developer.apple.com/library/ios/documentation/UserExperience/Conceptual/MobileHIG/Art/navigation_contents.m4v)
> **譯者注:**以上為視頻截圖,完整視頻可[點擊觀看](https://developer.apple.com/library/ios/documentation/UserExperience/Conceptual/MobileHIG/Art/navigation_contents.m4v)。
在某些情況下,在一個應用中結合多種導航類型會有很好的效果。例如,對于扁平信息結構中某一分類下的內容,用分層導航的方式來顯示可能會更好。
**應該讓用戶時刻清楚自己當前在應用中所處的位置,及如何前往目的頁面。**無論使用哪種適合你的應用結構的導航,最重要的是用戶訪問內容的路徑要有邏輯、可預期和易于追溯。
UIKit定義了一些標準的UI元素,以方便地構建分層或扁平導航,還有一些元素可以構建以內容為中心的導航,例如電子書或者媒體觀看類應用。游戲或者其他體驗驅動的應用通常需要一些自定義的元素和行為。
**使用導航欄(Navigation Bar)幫助用戶輕松訪問分層內容。**導航欄的標題可以顯示用戶當前所處的層級,而后退按鈕可以回到上一層級。想要了解更多內容,請查看[Navigation Bar](https://developer.apple.com/library/ios/documentation/userexperience/conceptual/mobilehig/Bars.html#//apple_ref/doc/uid/TP40006556-CH32-SW3).
**使用標簽欄(Tab Bar)顯示同類型的內容或功能。**標簽欄很適合于扁平信息結構,可以讓用戶在分類之間隨意切換,而不用在意當前所處的位置。想要了解更多內容,請查看[Tab Bar](https://developer.apple.com/library/ios/documentation/userexperience/conceptual/mobilehig/Bars.html#//apple_ref/doc/uid/TP40006556-CH32-SW52).
**在應用中,如果每屏顯示的都是同類項或同類頁,可以使用頁面控件(Page Control)。**頁面控件的優點是可以直觀地告訴用戶有多少個項目或頁面,以及當前所處位置。想要了解更多內容,請查看[Page Control](https://developer.apple.com/library/ios/documentation/userexperience/conceptual/mobilehig/Controls.html#//apple_ref/doc/uid/TP40006556-CH35-SW6)。
**一般來說,最好能給用戶提供到達每一屏的唯一路徑。**如果某屏內容用戶需要在不同場景下查看,可以考慮使用臨時視圖,例如模態視圖、動作菜單或警告框。想要了解更多,請查看[Modal View](https://developer.apple.com/library/ios/documentation/userexperience/conceptual/mobilehig/Alerts.html#//apple_ref/doc/uid/TP40006556-CH34-SW3)、[Action Sheet](https://developer.apple.com/library/ios/documentation/userexperience/conceptual/mobilehig/Alerts.html#//apple_ref/doc/uid/TP40006556-CH34-SW36)和[Alert](https://developer.apple.com/library/ios/documentation/userexperience/conceptual/mobilehig/Alerts.html#//apple_ref/doc/uid/TP40006556-CH34-SW2)。
UIKit同時還提供了以下相關控件:
* [分段控件(Segmented Control)](https://developer.apple.com/library/ios/documentation/UserExperience/Conceptual/MobileHIG/Controls.html#//apple_ref/doc/uid/TP40006556-CH15-SW27)。分段控件讓用戶在一屏內就可以查到不同分類的內容,而不需要切換到其他屏幕。
* [工具欄(Toolbar)](https://developer.apple.com/library/ios/documentation/UserExperience/Conceptual/MobileHIG/Bars.html#//apple_ref/doc/uid/TP40006556-CH12-SW4)。盡管工具欄和導航欄或標簽欄相似,但是工具欄不具導航作用。相反,工具欄為用戶提供了可以控制當前屏幕內容的控件。
> (**譯者注:**上文提到的Navigation Bar, Tab Bar, Page Control, Modal View, Action Sheet, Alert, Segmented Control和Toolbar均處在iOS Human Interface Guidelines的第4章 UI Elements部分,翻譯將在后續更新中放出,煩請各位耐心等候。若有需要,亦可先參考先前已翻譯的iOS7 UI Elements章節:[上](http://isux.tencent.com/ios-human-interface-guidelines-ui-design-ios7-ui-1.html),[下](http://isux.tencent.com/ios-human-interface-guidelines-ui-design-ios7-ui-2.html)。)
- (1):UI設計基礎
- 1.1 為iOS而設計(Designing for iOS)
- 1.2 iOS應用解析 (iOS App Anatomy)
- 1.3 適應性和布局(Adaptivity and Layout)
- 1.4 啟動與停止(Starting and Stopping)
- 1.5 導航(Navigation)
- 1.6 模態情境(Modal Contexts)
- 1.7 交互性與反饋(Interactivity and Feedback)
- 1.8 動畫(Animation)
- 1.9 品牌推廣(Branding)
- 1.10 顏色與字體(Color and Typography)
- 1.11 圖標和圖形(Icons and Graphics)
- 1.12 術語和措辭(Terminology and Wording)
- 1.13 與iOS的整合(Integrating with iOS)