標籤:
iOS app解剖
幾乎所有的iOS app 都至少使用一些由UIKit架構定義的UI組件。在你設計你的app的UI的時候,知道這些基本組件的名字,角色,功能可以協助你做出充分旁徵博引的決定。
UIKit提供的UI元素分為四大類:
·條形。條形包括告訴使用者所在位置(定位)的環境資訊,和協助使用者導航或者做出行動的控制項。
·內容視圖。內容視圖包含app具體的內容,並且允許滑動,插入,刪除和對元素重新排列管理這些行為。
·控制項。控制項表現行為或者展示資訊。
·臨時視圖。臨時視圖可以簡要地顯示,給使用者提供重要的資訊和功能或者額外的選擇。
除了定義UI元素,UIKit也定義了能夠實現功能的對象,例如手勢識別,畫圖,授權訪問以及支援列印。
從編程的角度來說,一種UI元素其實是視圖的一種,因為它繼承於UIView。一個視圖知道如何把它自己描繪到螢幕上,並且當使用者在它的界限內點擊的時候它能夠知道。控制項(比如按鈕和滑動條),內容視圖(比如集合視圖和表視圖),還有臨時視圖(比如警告視窗和action sheets(不知道翻譯為什麼比較合適))都是view類型。
為了管理你app中的一些列視圖或者視圖體系,你尤其需要使用一個視圖控制器。試圖控制器能夠通過座標來展現不同的視圖,實現使用者互動背後的功能,還能夠管理從一個螢幕到另一個螢幕的過渡。舉個例子,設定使用一個導航控制器來表現視圖的體系。
這有一個視圖和視圖控制器如何結合來呈現一個iOS app中的UI的例子。(圖片不貼了)
儘管開發人員從視圖和視圖控制器的角度思考,使用者卻傾向於把iOS app作為一系列螢幕的集合來體驗。從這個觀點看,一個螢幕大致和app中一個獨特的可視狀態或者模式相一致。
注意:一個iOSapp包括一個視窗---但是不像是電腦應用中的視窗---一個iOS視窗沒有可視化的部分並且它不能被移動到螢幕上的另一個位置。大部分的iOS app只含有一個視窗,個別支援外置螢幕的app可能有超過一個視窗。
在 iOS人機互動指導原則中,screen這個詞的意思正如大多數使用者所理解的那樣。作為一名開發人員,你可能也在其它環境中讀到了這個詞。在那些環境中設計到了UIScreen這個對象,你可以使用這個對象來訪問一個外置螢幕。
iOS human Interface Guidelines(原創翻譯)第二章