那么,周末早上好唄。繼續(xù)我們的iOS人機(jī)界面設(shè)計規(guī)范草根中文工程。這算哪門子title呢。
重要:這是針對于正在開發(fā)中的API或技術(shù)的預(yù)備文檔(預(yù)發(fā)布版本)。雖然該文檔在技術(shù)精確度上經(jīng)過了嚴(yán)格的審核,但并非最終版本,僅供蘋果開發(fā)者計劃的注冊會員使用。蘋果提供這份機(jī)要文檔的目的,是幫助你按照文中描述的方式對技術(shù)的選擇及界面的設(shè)計開發(fā)進(jìn)行規(guī)劃。這些信息有可能發(fā)生變化,屆時,你的設(shè)計開發(fā)方式需要基于最終版本的操作系統(tǒng)及文檔進(jìn)行相應(yīng)的調(diào)整和測試。該文檔或許會隨著API或相關(guān)技術(shù)在未來的發(fā)展而進(jìn)行更新。
譯文最后更新時間:2013-06-22
人們在使用應(yīng)用時,通常不會感知到導(dǎo)航的存在,除非導(dǎo)航帶來的體驗沒有達(dá)到他們的預(yù)期。而你的工作,就是以符合產(chǎn)品整體架構(gòu)及目標(biāo)的方式打造出不會被用戶察覺到的導(dǎo)航機(jī)制。
總體上講,導(dǎo)航可以分為三種類型,其中每一類都能很好的適用于一種特定類型的應(yīng)用:
- 樹形信息結(jié)構(gòu)的應(yīng)用
- 扁平化信息結(jié)構(gòu)的應(yīng)用
- 由內(nèi)容或體驗所驅(qū)動的應(yīng)用
某些情況下,幾種不同風(fēng)格的導(dǎo)航可以很好的整合在同一款應(yīng)用當(dāng)中。例如,扁平化信息結(jié)構(gòu)的應(yīng)用當(dāng)中,某個分類里的信息也許可以很好的通過樹形結(jié)構(gòu)來呈現(xiàn)出來。
無論采用哪種風(fēng)格的導(dǎo)航,最重要的是,要確保用戶在內(nèi)容當(dāng)中的行進(jìn)路徑符合邏輯、可以預(yù)知、容易跟隨。用戶應(yīng)該始終能夠了解自己在應(yīng)用當(dāng)中所處的位置,以及怎樣行進(jìn)到下一個目標(biāo)位置。
通過UIKit框架當(dāng)中定義的一些標(biāo)準(zhǔn)UI控件,你可以很輕松的創(chuàng)建樹形導(dǎo)航或扁平化結(jié)構(gòu)的導(dǎo)航。此外,還有一些控件可以幫你創(chuàng)建以內(nèi)容為中心的導(dǎo)航模式,例如很多圖書風(fēng)格或媒體瀏覽方面的應(yīng)用當(dāng)中所使用的那樣。而那些圍繞著體驗來打造導(dǎo)航的應(yīng)用,譬如游戲,通常都會使用訂制化的UI元素及交互行為模式。
通過導(dǎo)航欄(navigation bar),為用戶提供一種能夠輕松的在樹形信息結(jié)構(gòu)當(dāng)中前后行進(jìn)的導(dǎo)航方式。導(dǎo)航欄的標(biāo)題通常用來向用戶展示當(dāng)前界面在信息結(jié)構(gòu)當(dāng)中所處的位置,回退按鈕可以幫助用戶回到上一級結(jié)構(gòu)。請參考導(dǎo)航欄一節(jié),了解更多詳情。
通過標(biāo)簽欄(tab bar)展示整體內(nèi)容或功能之下的若干個同級分類項。標(biāo)簽欄可以很好的支持扁平化的信息結(jié)構(gòu),因為無論用戶當(dāng)前處于哪個界面,都可以直接在若干類別當(dāng)中進(jìn)行切換。請參考標(biāo)簽欄一節(jié),了解更多詳情。
通過分頁控件(page control)來暗示多個條目或內(nèi)容視圖的存在。該控件可以有效的向用戶展示內(nèi)容單元的數(shù)量,以及當(dāng)前所見的這一條在隊列中的位置。請參考分頁控件一節(jié),了解更多詳情。
注意:雖然工具欄(toolbar)在外觀樣式上與導(dǎo)航欄或標(biāo)簽欄很相似,但它不能用來承載導(dǎo)航方面的功能。要通過工具欄為用戶提供那些針對當(dāng)前上下文內(nèi)容的功能操作。
一般來講,最好讓每個界面都有唯一的入口。如果用戶可以在不同的上下文當(dāng)中訪問到同一個界面,那么請考慮使用一種臨時化的視圖,例如模態(tài)視圖(modal view)、動作表單(action sheet)或是警告提示(alert)。請參考模態(tài)視圖、動作表單、警告提示,了解更多詳情。