成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

iOS開發 UIViewController內存管理

移動開發 iOS
本文介紹的是iOS開發 UIViewController內存管理,在 iOS 3.0 后,UIViewController 多了一個叫做 viewDidUnLoad 的方法,我們先來看內容。

iOS開發 UIViewController內存管理是本文要介紹的內容,在 iOS 3.0 后,UIViewController 多了一個叫做 viewDidUnLoad 的方法。不少人都不清楚這個方法的具體意義,蘋果的文檔也就一句 ”Called when the controller’s view is released from memory” 簡單的解釋了下,并要求你把 IBOutlet 綁定的視圖給清空,為什么呢?

先看下 UIViewController 從創建 view 到展示的流程的幾個函數

  1. -init  
  2. -initWithNibName:bundle: 

這兩個方法都是初始化一個 vc,但請注意 view 不是這時候載入的

  1. -loadView  
  2. -viewDidLoad 

當一個視圖準備展現時,vc 首先會判斷 view 是否已經創建否則便通過之前指定的 xib 文件來初始化 view,以及綁定其他關系(若沒有指定 xib 文件,則默認會搜索和 vc 同名的 xib,比如 myNameViewController 就會搜索 myNameViewController.xib 文件)

若是沒有 xib 文件,你就可以在 loadview 中自己手動創建這個 viewControoler 需要的視圖。接下來就是調用到 -viewDidLoad,許多人喜歡在這里做些其他事情,比如做個 http 請求、建立個數組啥的。這里若不處理正確,-viewDidUnload 激活時內存就容易泄露了,稍后提到。

  1. -view()appear  
  2.  -view()disappear 

這幾個方法就不解釋了

  1. -viewDidUnload 

該方法在收到內存警告,同時該視圖并不在當前界面顯示時候會被調用,此時該 controller 的 view 已經被釋放并賦值為 nil。

接下來你要做的是把實例變量的子視圖釋放(IBOulet 的,以及自己添加的) 其他實例變量,比如之前在 -viewDidLoaded 中實例的數據數組、http 請求釋放掉

因為當該 viewController 再次被激活準備顯示時(比如 navigationControler 返回到上一級),vc 發現自己的 view 為空后會重復之前的流程直到把 view 給創建起來。若沒將自己額外添加的子視圖,各種類實例變量釋放,這里便會重新再次創建。

于是,內存泄露了。

小結:詳解UIViewController 內存管理的內容介紹完了,希望本文對你有所幫助。

轉自 http://ixhan.com/2011/02/uiviewcontroller-memory-manage/

責任編輯:zhaolei 來源: Cocoa China
相關推薦

2017-03-07 10:15:35

iOS內存管理開發

2018-07-23 09:26:08

iOS內存優化

2011-08-22 11:07:16

IOS 開發多核內存

2017-02-09 21:24:22

iOS內存管理

2016-04-11 09:30:49

內存管理ios開發

2011-09-01 10:42:14

Objective-CCocoa內存管理

2015-03-13 09:30:23

iOS內存管理

2012-01-18 14:14:29

iOS教程iOS5

2014-07-31 10:48:09

Android內存管理OOM

2011-08-17 16:23:31

iPhone開發UIViewContr

2011-08-02 10:50:56

iOS開發 內存緩存

2013-12-17 15:46:04

iOS開發iOS 內存泄漏

2012-02-01 13:57:40

內存緩存機制

2015-06-25 09:47:20

iOS內存管理

2014-03-12 09:37:22

內存管理autoreleaseautorelease

2011-07-21 17:40:43

iOS 多核 內存

2011-08-05 16:41:48

iOS 隊列 內存

2016-03-03 10:07:39

ios內存管理面試總結

2011-07-26 15:14:24

蘋果 Cocoa 內存

2017-06-30 15:58:07

Android開發內存
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 成人在线中文字幕 | 日韩免费电影 | 久久综合久久综合久久 | 久久精品一区二区三区四区 | 欧美精品一区二区蜜桃 | 成人黄色av | 免费观看av网站 | 精品国产一区二区三区在线观看 | 最新中文字幕第一页视频 | 精品中文字幕久久 | 国产高清美女一级a毛片久久w | 91麻豆精品国产91久久久更新资源速度超快 | 一级高清 | 久久久性色精品国产免费观看 | 亚洲一区二区三区视频 | 男女羞羞在线观看 | 国产国语精品 | 午夜视频免费在线观看 | 国产精品特级片 | 精品成人av | 国产三级电影网站 | 国产精品一区二区在线播放 | 欧美做暖暖视频 | 中文字幕a√ | 色婷婷综合久久久久中文一区二区 | 亚洲国产精品久久久久婷婷老年 | 久久99精品久久久 | 国产高清av免费观看 | 日韩精品在线播放 | 在线看亚洲 | 亚洲精品1区 | 久草热8精品视频在线观看 午夜伦4480yy私人影院 | 国产麻豆乱码精品一区二区三区 | 精品一区二区久久久久久久网站 | 日韩色综合 | 91久久久精品国产一区二区蜜臀 | 日本三级网址 | 国产亚洲精品精品国产亚洲综合 | 国产精品一区二区免费看 | 亚洲精品久久久久久久久久吃药 | av日韩在线播放 |