第二篇更多的是從技術的角度對iOS界面組成原理進行了簡單的解析,篇幅很短,可稍做了解;更多關於iOS開發入門的內容可參考「設計師應該瞭解的iOS應用開發基礎知識」一文。另外,很是感謝各位朋友在微博上的支持與鼓勵,不過有一點須要注意,目前作的這個版本(2013-06-15)並不是iOS7設計規範的最終版;該版本的做用及注意事項詳見下面的重要提示。編程
重要:這是針對於正在開發中的API或技術的預備文檔。雖然該文檔在技術精確度上通過了嚴格的審覈,但並不是最終版本,僅供蘋果開發者計劃的註冊會員使用。蘋果提供這份機要文檔的目的,是幫助你按照文中描述的方式對技術的選擇及界面的設計開發進行規劃。這些信息有可能發生變化,屆時,你的設計開發方式須要基於最終版本的操做系統及文檔進行相應的調整和測試。該文檔或許會隨着API或相關技術在將來的發展而進行更新。框架
幾乎全部的iOS應用都會用到一些由UIKit框架所定義的UI控件。對這些基本控件的名稱、角色和做用加以瞭解,你將能更好的在打造界面的過程當中作出正確合理的設計決策。測試
UIKit框架提供的UI元素能夠分爲4大類:動畫
欄(Bars):包含與上下文內容情境相關的信息,告訴用戶他們在應用當中所處的位置;同時還包含相關的導航功能,或是能夠由用戶發起的操做。spa
內容視圖(Content views):包含當前應用所特有的內容,並支持相關的交互行爲,例如滾屏、插入、刪除、對列表條目進行從新排序,等等。操作系統
控制元素(Controls):產生行爲或顯示信息。設計
臨時視圖(Temporary views):臨時性的向用戶呈現重要信息,或提供額外的功能及選項。3d
除了定義UI元素之外,UIKit框架還定義了那些能夠完成諸如手勢識別、繪製、輔助支持、打印支持等功能的對象。orm
從編程的角度來說,UI元素能夠被看作是不一樣類型的視圖(views),由於它們都繼承自UIView類。一個視圖知道怎樣將它本身輸出到屏幕上,知道怎樣捕獲用戶在它的範圍內執行的點擊行爲。對象
要在應用中管理一組或一系列具備繼承關係的視圖,你一般須要使用視圖控制器(view controller)。視圖控制器能夠協調不一樣視圖的顯示方式,在用戶發起行爲後執行相應的功能,而且對界面切換時所需的動畫過渡效果進行管理。
下圖展現了視圖和視圖控制器是怎樣協同工做來呈現iOS應用界面的:
雖然開發者們習慣於從視圖和控制器的角度來思考問題,但用戶只會將應用看作是由一個個界面所組成的總體。從這個角度講,每一「屏」都對應着應用中的一個明確的視覺狀態或模式。
注意:每一個iOS應用都包含一個窗口(window)。與桌面應用中的概念有所不一樣,iOS中的窗口沒有真正的可視部分,並且不能從屏幕上的一個地方移動到另一個地方。多數iOS應用只有一個窗口;那些支持外接顯示設備的應用會有多個窗口。
iOS界面設計規範當中會用到「屏(screen)」這個詞,由於它能被多數用戶所理解。做爲開發者,你可能還會在其餘不一樣的上下文當中讀到「屏」的概念,例如被用來指代UIScreen對象(用於訪問外界顯示設備)。