iOS應用解剖
幾乎所有的iOS應用中看到的東西都是UIKit框架中定義的東西,只要知道這些
UI組件的位置,大小,顯示的內容,邊框,顯示和隱藏;
看到的東西無非就是:
UIView,UILabel,UIButton,UITextField,UITextView,Navigation bar ,Tab bar,
SegmentedControl,toolbar button ,UIWebview,UIMapview,UIAlertView 等等。
這些UI控件都是用戶信息的載體,而它們的操作可以通過代理的方式傳遞出去,在MVC設計模式中
讓Controller知道用戶對UI控件做了什麼。
在UI空間中又可以分爲四大類:
Bars:主要包含上下文關係信息,告訴用戶他們當前所處的位置,幫助用戶導航和初始化動作,
如navigation bar喝tab bar
Content views:內容視圖包含了app具體的信息,可以被顯示,增刪改查,重新整理顯示等
controls:主要是執行某個動作和顯示信息,如UIButton
temporary view:臨時的視圖,顯示臨時重要的信息,或者增加用戶的選擇和功能。如UIAlertView
所有的可視控件都是繼承UIView,所以這些控件都能很好的把自己渲染到屏幕上去。他們能夠感知用戶
是否對自己進行操作,並根據條件來看是否要執行某些操作。它們之間又存在着包含的拓撲關係,相
鄰關係,父子關係,如果UIWindow是一個父親節點,一個app的所有可視控件就是一個多叉樹,
都可以遍歷所有的視圖控件。
而這些可視控件都是通過UIViewController進行管理,控制可視空間的顯示隱藏,移動等操作。