iOS開(kāi)發(fā)中,我們常常將一塊View封裝起來(lái),以便于統(tǒng)一管理內(nèi)部的子控件。如iOS回顧筆記(02)中的"書"這一自定義View。
下面就來(lái)說(shuō)說(shuō)自定義View的封裝以及它的多種實(shí)現(xiàn)方式
自定義UIView(控件)的封裝
什么是View的封裝
如果一個(gè)View的內(nèi)部子控件比較多,一般會(huì)考慮自定義一個(gè)View,把它內(nèi)部子控件的創(chuàng)建屏蔽起來(lái),不讓外部關(guān)心。
外界傳入對(duì)應(yīng)的數(shù)據(jù)模型給view。view拿到數(shù)據(jù)模型之后給內(nèi)部的子控件設(shè)置對(duì)應(yīng)的數(shù)據(jù)。
封裝自定義控件的基本步驟
重寫
- (instancetype)initWithFrame
方法,在此方法中創(chuàng)建并添加子控件。提供一個(gè)便利的構(gòu)造方法,通常為 類方法,快速創(chuàng)建一個(gè)實(shí)例對(duì)象
重寫
- (void)layoutSubviews
方法,在此方法中設(shè)置子控件的frame,一定要調(diào)用[super layoutSubviews]
設(shè)置模型屬性,在set方法中,給對(duì)應(yīng)的子控件賦值。
看代碼
網(wǎng)友評(píng)論