久久国产成人av_抖音国产毛片_a片网站免费观看_A片无码播放手机在线观看,色五月在线观看,亚洲精品m在线观看,女人自慰的免费网址,悠悠在线观看精品视频,一级日本片免费的,亚洲精品久,国产精品成人久久久久久久

分享

loadView,viewDidLoad,viewDidUnload

 VipeX 2015-10-01

loadView,viewDidLoad,viewDidUnload,這三個函數(shù)到底應(yīng)該怎么用,?

谷歌一下,,全是轉(zhuǎn)載,大概內(nèi)容是這樣:

  1. loadView 手動加載view
  2. viewDidLoad用于nib文件加載后,,進一步處理
  3. viewDidUnload是viewDidLoad的鏡像

參考官方文檔,,我給出糾正:

一、loadView

永遠不要主動調(diào)用這個函數(shù),。view controller會在view的property被請求并且當前view值為nil時調(diào)用這個函數(shù),。如果你手動創(chuàng)建view,你應(yīng)該重載這個函數(shù)。如果你用IB創(chuàng)建view并初始化view controller,,那就意味著你使用initWithNibName:bundle:方法,,這時,你不應(yīng)該重載loadView函數(shù),。

這個方法的默認實現(xiàn)是這樣:先尋找有關(guān)可用的nib文件的信息,,根據(jù)這個信息來加載nib文件,如果沒有有關(guān)nib文件的信息,,默認實現(xiàn)會創(chuàng)建一個空白的UIView對象,,然后讓這個對象成為controller的主view。

所以,,重載這個函數(shù)時,你也應(yīng)該這么做,。并把子類的view賦給view屬性(property)(你create的view必須是唯一的實例,,并且不被其他任何controller共享),而且你重載的這個函數(shù)不應(yīng)該調(diào)用super,。

如果你要進行進一步初始化你的views,,你應(yīng)該在viewDidLoad函數(shù)中去做。在iOS 3.0以及更高版本中,,你應(yīng)該重載viewDidUnload函數(shù)來釋放任何對view的引用或者它里面的內(nèi)容(子view等等),。

這個網(wǎng)上的資料都說的很不全面,尤其是藍色字部分,。

二,、viewDidLoad

這個函數(shù)在controller加載了相關(guān)的views后被調(diào)用,而不論這些views存儲在nib文件里還是在loadView函數(shù)中生成,。而多數(shù)情況下是做nib文件的后續(xù)工作,。

網(wǎng)上資料對這個函數(shù)的描述則完全不對。

三,、viewDidUnload

這個函數(shù)是viewDidLoad的對立函數(shù),。在程序內(nèi)存欠缺時,這個函數(shù)被controller調(diào)用(),。由于controller通常保存著與view(這里黑體的view指controller的view屬性)相關(guān)的對象(一般是view的子view)或者其他運行時創(chuàng)建的對象的引用,,所以你必須使用這個函數(shù)來放棄這些對象的所有權(quán)以便內(nèi)存回收。但不要釋放那些難以重建的數(shù)據(jù)(不要在這個函數(shù)中釋放view),。

通常controller會保存nib文件建立的views的引用,,但是也可能會保存著loadView函數(shù)創(chuàng)建的對象的引用。最完美的方法是使用合成器方法:

1
self.myCertainView = nil;

這樣合成器會release這個view,,如果你沒有使用property,,那么你得自己顯式釋放這個view。

網(wǎng)上對這個函數(shù)的描述含含糊糊,看了等于沒看,。

另外:如果controller存儲了其他object和view的引用,,你還得在dealloc方法中釋放這些內(nèi)存。對于iOS2.x,,你還必須在調(diào)用super dealloc方法前將這些引用置為nil,。

四、結(jié)論

所以流程應(yīng)該是這樣:

(loadView/nib文件)來加載view到內(nèi)存 ——>viewDidLoad函數(shù)進一步初始化這些view ——>內(nèi)存不足時,,調(diào)用viewDidUnload函數(shù)釋放views

—->當需要使用view時有回到第一步

如此循環(huán)

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點,。請注意甄別內(nèi)容中的聯(lián)系方式,、誘導購買等信息,謹防詐騙,。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,,請點擊一鍵舉報。
    轉(zhuǎn)藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多