UIView的initWithFrame方法理解

1. initWithFrame方法是什么锄贷?

initWithFrame方法用來(lái)初始化并返回一個(gè)新的視圖對(duì)象,根據(jù)指定的CGRect(尺寸)揽惹。
當(dāng)然秋忙,其他UI對(duì)象盔沫,也有initWithFrame方法医咨,但是,我們以UIView為例架诞,來(lái)搞清楚initWithFrame方法拟淮。

2.什么時(shí)候用initWithFrame方法?

簡(jiǎn)單的說(shuō)谴忧,我們用編程方式申明很泊,創(chuàng)建UIView對(duì)象時(shí),使用initWithFrame方法沾谓。
在此委造,我們必須搞清楚,兩種方式來(lái)進(jìn)行初始化UIView均驶。

1.使用 Interface Builder 方式昏兆。

這種方式,就是使用nib文件妇穴。通常我們說(shuō)的“拖控件” 的方式爬虱。

實(shí)際編程中隶债,我們?nèi)绻肐nterface Builder 方式創(chuàng)建了UIView對(duì)象。(也就是跑筝,用拖控件的方式)
那么死讹,initWithFrame方法方法是不會(huì)被調(diào)用的。因?yàn)閚ib文件已經(jīng)知道如何初始化該View曲梗。(因?yàn)樵蘧覀冊(cè)谕显搗iew的時(shí)候,就定義好了長(zhǎng)稀并、寬仅颇、背景等屬性)。
這時(shí)候碘举,會(huì)調(diào)用initWithCoder方法忘瓦,我們可以用initWithCoder方法來(lái)重新定義我們?cè)趎ib中已經(jīng)設(shè)置的各項(xiàng)屬性。

2.使用編程方式引颈。

就是我們聲明一個(gè)UIView的子類耕皮,進(jìn)行“手工”編寫代碼的方式。

實(shí)際編程中蝙场,我們使用編程方式下凌停,來(lái)創(chuàng)建一個(gè)UIView或者創(chuàng)建UIView的子類。這時(shí)候售滤,將調(diào)用initWithFrame方法罚拟,來(lái)實(shí)例化UIView。
特別注意完箩,如果在子類中重載initWithFrame方法赐俗,必須先調(diào)用父類的initWithFrame方法。在對(duì)自定義的UIView子類進(jìn)行初始化操作弊知。
比如:
- (id)initWithFrame:(CGRect)frame{
self = [super initWithFrame:frame];// 先調(diào)用父類的initWithFrame方法
if (self) {

    // 再自定義該類(UIView子類)的初始化操作阻逮。
    _scrollView = [[UIScrollView alloc] initWithFrame:self.bounds];
    [_scrollView setFrame:CGRectMake(0, 0, 320, 480)];
    _scrollView.contentSize = CGSizeMake(320*3, 480);
    
    [self addSubview:_scrollView];
}
return self;

}

在這里,我想秩彤,應(yīng)該對(duì)initWithFrame方法略知一二了叔扼。
那么,用Interface Builder 方式創(chuàng)建的nib文件是什么漫雷?

對(duì)于應(yīng)用程序瓜富,資源是一種數(shù)據(jù)文件,伴隨可程序執(zhí)行程序的一種數(shù)據(jù)文件珊拼。(可以理解為可執(zhí)行程序的食呻,一種不可缺少的組陳部分)。
資源文件,是一種可移動(dòng)的仅胞,由適合的工具編寫的一種特殊的代碼每辟。
如:plish文件,txt文件干旧,圖像渠欺,視頻等文件。都可以被Xcode識(shí)別和引用椎眯。一個(gè)應(yīng)用程序可以包含多種形式的資源文件挠将。當(dāng)然,nib文件也不例外编整,僅僅是一種資源文件舔稀。通過(guò)Interface Builder 方式,可以創(chuàng)建nib文件掌测,存儲(chǔ)應(yīng)用程序的UI對(duì)象内贮。供應(yīng)用程序來(lái)讀取。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末汞斧,一起剝皮案震驚了整個(gè)濱河市夜郁,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌粘勒,老刑警劉巖竞端,帶你破解...
    沈念sama閱讀 221,635評(píng)論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異庙睡,居然都是意外死亡事富,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,543評(píng)論 3 399
  • 文/潘曉璐 我一進(jìn)店門乘陪,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)赵颅,“玉大人,你說(shuō)我怎么就攤上這事暂刘。” “怎么了捂刺?”我有些...
    開封第一講書人閱讀 168,083評(píng)論 0 360
  • 文/不壞的土叔 我叫張陵谣拣,是天一觀的道長(zhǎng)。 經(jīng)常有香客問(wèn)我族展,道長(zhǎng)森缠,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 59,640評(píng)論 1 296
  • 正文 為了忘掉前任仪缸,我火速辦了婚禮贵涵,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己宾茂,他們只是感情好瓷马,可當(dāng)我...
    茶點(diǎn)故事閱讀 68,640評(píng)論 6 397
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著跨晴,像睡著了一般欧聘。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上端盆,一...
    開封第一講書人閱讀 52,262評(píng)論 1 308
  • 那天怀骤,我揣著相機(jī)與錄音,去河邊找鬼焕妙。 笑死蒋伦,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的焚鹊。 我是一名探鬼主播痕届,決...
    沈念sama閱讀 40,833評(píng)論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼寺旺!你這毒婦竟也來(lái)了爷抓?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,736評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤阻塑,失蹤者是張志新(化名)和其女友劉穎蓝撇,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體陈莽,經(jīng)...
    沈念sama閱讀 46,280評(píng)論 1 319
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡渤昌,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,369評(píng)論 3 340
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了走搁。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片独柑。...
    茶點(diǎn)故事閱讀 40,503評(píng)論 1 352
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖私植,靈堂內(nèi)的尸體忽然破棺而出忌栅,到底是詐尸還是另有隱情,我是刑警寧澤曲稼,帶...
    沈念sama閱讀 36,185評(píng)論 5 350
  • 正文 年R本政府宣布索绪,位于F島的核電站,受9級(jí)特大地震影響贫悄,放射性物質(zhì)發(fā)生泄漏瑞驱。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,870評(píng)論 3 333
  • 文/蒙蒙 一窄坦、第九天 我趴在偏房一處隱蔽的房頂上張望唤反。 院中可真熱鬧凳寺,春花似錦、人聲如沸彤侍。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,340評(píng)論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)拥刻。三九已至怜瞒,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間般哼,已是汗流浹背吴汪。 一陣腳步聲響...
    開封第一講書人閱讀 33,460評(píng)論 1 272
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留蒸眠,地道東北人漾橙。 一個(gè)月前我還...
    沈念sama閱讀 48,909評(píng)論 3 376
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像楞卡,于是被迫代替她去往敵國(guó)和親霜运。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,512評(píng)論 2 359

推薦閱讀更多精彩內(nèi)容