亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 系統 > iOS > 正文

IOS 中loadView,viewDidLoad,viewDidUnload詳解及使用

2020-07-26 02:55:11
字體:
來源:轉載
供稿:網友

loadView,viewDidLoad,viewDidUnload,這三個函數到底應該怎么用?

搜索一下,全是轉載,大概內容是這樣:

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

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

一、loadView

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

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

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

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

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

二、viewDidLoad

這個函數在controller加載了相關的views后被調用,而不論這些views存儲在nib文件里還是在loadView函數中生成。而多數情況下是做nib文件的后續工作。

網上資料對這個函數的描述則完全不對。

三、viewDidUnload

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

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

self.myCertainView = nil;

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

網上對這個函數的描述含含糊糊,看了等于沒看。

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

四、結論

所以流程應該是這樣:

(loadView/nib文件)來加載view到內存 ――>viewDidLoad函數進一步初始化這些view ――>內存不足時,調用viewDidUnload函數釋放views

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

如此循環

感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
欧美国产激情18| 国产精品精品国产| 91国在线精品国内播放| 日韩精品极品在线观看| 国产精品第10页| 亚洲精品欧美日韩| 欧美国产日韩一区二区| 亚洲免费视频网站| 亚洲精品美女在线| 亚洲精品wwww| 国产精品美女999| 亚洲激情 国产| 久久亚洲精品视频| 91免费看国产| 亚洲色图第一页| 国产精品7m视频| 国产精品免费一区二区三区都可以| 日韩亚洲一区二区| 欧美激情2020午夜免费观看| 日韩av最新在线| 久久韩剧网电视剧| 久久九九精品99国产精品| 国产97色在线|日韩| 亚洲欧美日韩久久久久久| 久久精品视频va| 亚洲黄色www| 91中文字幕一区| 中文字幕在线成人| 亚洲女成人图区| 国产午夜精品视频免费不卡69堂| 亚洲人成自拍网站| 美日韩精品免费观看视频| 久久精品2019中文字幕| 亚洲国产精品资源| 国产精品av在线| 亚洲福利在线看| 中文字幕精品视频| 精品人伦一区二区三区蜜桃网站| 久久亚洲精品一区二区| 91香蕉国产在线观看| 国产精品女人久久久久久| 日韩高清电影免费观看完整| 91精品国产乱码久久久久久久久| 欧美日韩中文在线| 久久亚洲一区二区三区四区五区高| www.国产精品一二区| 国产精品成人一区| 日韩精品在线观看视频| 国产成人小视频在线观看| 欧美另类老肥妇| 91久久久久久| 欧美巨乳在线观看| 亚洲va国产va天堂va久久| 欧美一级淫片丝袜脚交| 欧美专区中文字幕| 韩国19禁主播vip福利视频| 中文字幕不卡av| 成人亚洲欧美一区二区三区| 国产一区二区三区欧美| 精品视频—区二区三区免费| 国产精品狼人色视频一区| 性欧美暴力猛交69hd| 亚洲天堂第一页| 国产日韩中文字幕| 欧洲日韩成人av| 91精品久久久久久久久不口人| 全亚洲最色的网站在线观看| 欧美一区二三区| 国产精品久久久久久久电影| 日韩在线观看免费全集电视剧网站| 国产精品吴梦梦| 久久91亚洲精品中文字幕奶水| 国产免费一区二区三区在线能观看| 77777亚洲午夜久久多人| 日韩高清电影免费观看完整版| 精品久久国产精品| 日韩免费av片在线观看| 亚洲黄页网在线观看| 成人激情视频免费在线| 亚洲精品成人久久电影| 色小说视频一区| 成人做爽爽免费视频| 国产精品入口福利| 最近2019年中文视频免费在线观看| 精品人伦一区二区三区蜜桃网站| 国产日韩在线播放| 国产欧美婷婷中文| 91美女片黄在线观| 亚洲精品成人av| 久久久www成人免费精品| 久久99视频免费| 在线成人激情黄色| 亚洲理论电影网| 97超级碰碰人国产在线观看| 亚洲成人激情小说| 亚洲精品电影网站| 欧美精品久久久久久久免费观看| 久久久久久久久久国产精品| 色综合亚洲精品激情狠狠| 亚洲在线视频观看| 亚洲影院色无极综合| 久久天堂av综合合色| 亚洲毛片在线观看.| 亚洲成年人影院在线| 黑人巨大精品欧美一区二区三区| 亚洲www永久成人夜色| 国产在线播放不卡| 国产精品香蕉av| 国产精品极品美女在线观看免费| 亚洲国产黄色片| 自拍偷拍免费精品| 国产一区二区三区在线视频| 欧美黑人xxx| 日韩精品在线看| 国产精品青青在线观看爽香蕉| 黑丝美女久久久| 国产伦精品一区二区三区精品视频| 日韩av三级在线观看| 国产香蕉精品视频一区二区三区| 日韩av免费看| 一本色道久久综合狠狠躁篇怎么玩| 国产精品免费视频久久久| 久久久电影免费观看完整版| 久久视频在线播放| 精品久久久久久国产91| 亚洲第一网中文字幕| 国产精品久久久久久久久久久久久| 国产精品免费久久久久影院| www.精品av.com| 日韩专区在线播放| 日韩乱码在线视频| 欧美精品久久久久久久久久| 国产精品999| 国产精品专区第二| 日韩在线视频中文字幕| 成人精品久久av网站| 国产成人在线精品| 2018国产精品视频| 国产一区二区三区免费视频| 亚洲人成电影网站色www| 久久精品国产一区| 亚洲福利视频网| 日韩美女免费线视频| 国产精品视频26uuu| 欧美精品免费在线观看| 在线国产精品播放| 国产成人综合一区二区三区| 亚洲va久久久噜噜噜| 成人xxxx视频| 亚洲第一男人av| 国产精品一区二区av影院萌芽| 欧美在线视频a| 亚洲成**性毛茸茸| 亚洲aⅴ男人的天堂在线观看| 91高清免费在线观看| 国产精品v日韩精品| 亚洲午夜国产成人av电影男同| 国产精品久久久久久av下载红粉| 国产精品扒开腿做爽爽爽视频| 精品国产乱码久久久久酒店| 国产精品嫩草影院久久久| 国产性猛交xxxx免费看久久| 国产成人精品一区二区在线| 少妇久久久久久|