Storyboard視覺化程式設計詳解
storyboard :故事版,描述軟體介面。
應用程式的啟動原理:
應用程式啟動的時候,首先會載入一個Main Interface 裡的 main.storyboard
UIViewController 控制器,處理介面的各種事件,並負責介面的建立和銷燬。
IBAction:
①只能修飾方法返回值型別
②被IBAction修飾的方法能脫線到storyboard中、返回值實際是void
③使用方式 -(IBAction)buttonClick{}
IBOutlet:
①只能修飾屬性
②被IBAction修飾的方法能脫線到storyboard中
③使用方式 @property (nonatomic, weak)IBOutlet UILabel *label;
IBOutletCollection:
①將介面上一組相同的控制元件連線到同一個陣列中
#ifndef IBOutletCollection #define IBOutletCollection(ClassName) #endif
IBOutletCollection帶有一個引數,該引數是一個類名。
②通常情況下,我們使用一個IBOutletCollection屬性時,屬性必須是strong的,且型別是NSArray,如下所示
@property (strong, nonatomic) IBOutletCollection(UIScrollView) NSArray *scrollViews;
③使用此屬性要注意兩點:
1>IBOutletCollection集合中物件的順序是不確定的。我們通過除錯方法可以看到集合中物件的順序跟我們連線的順序是一樣的。但是這個順序可能會因為不同版本的Xcode而有所不同。所以我們不應該試圖在程式碼中去假定這種順序。
2>不管IBOutletCollection(ClassName)中的控制元件是什麼,屬性的型別始終是NSArray。實際上,我們可以宣告是任何型別,如NSSet,NSMutableArray,甚至可以是UIColor,但不管我們在此設定的是什麼類,IBOutletCollection屬性總是指向一個NSArray陣列。
IB全稱 : Interface Builder