圖片發(fā)自簡書App

圖片發(fā)自簡書App
IBOutlet對(duì)于編譯器而言只是一個(gè)標(biāo)記,也就是說,編譯器會(huì)忽略這個(gè)關(guān)鍵字。
Interface Builder則是根據(jù)IBOutlet來尋找可以在Builder里操作的成員變量。
需要注意的是,任何一個(gè)被聲明為IBOutlet并且在Interface Builder里被連接到一個(gè)UI組件的成員變量,會(huì)被額外retain一次。
IBOutlet UILabel *label;
這個(gè)label在Interface Builder里被連接到一個(gè)UILabel。此時(shí),這個(gè)label的retainCount為2。
所以,只要使用了IBOutlet變量,一定需要在dealloc或者viewDidUnload里release這個(gè)變量。
用IBoutlet 和IBaction修飾的字段或方法都和InterfaceBuilder有關(guān)。
IBoutlet修飾的字段可以和InterfaceBuilder里相應(yīng)控件相關(guān)聯(lián);
IBaction修飾的方法可以和InterfaceBuilder里控件的相應(yīng)動(dòng)作相關(guān)聯(lián)。
圖片發(fā)自簡書App