Osc*_*ata 4 memory-management uiviewcontroller ios uistoryboard
按说我有一个的UIViewController一个和UIViewController中乙.从A,我调用方法presentViewController:B.当B出现时,A会发生什么?它是从内存中删除的吗?如果没有,我应该用什么方法来删除它?
如果我的UI流程是这样的,A-> B-> A-> B-> A-> B-> ...依此类推,如何防止内存相应增加?
当您使用presentViewController:animated:completion:
控制器中的方法A
以B
模态方式呈现控制器时,会发生的是将presentedViewController
属性A
设置为controller B
,并将presentingViewController
属性B
设置为A
.因此,在进行演示时,两个控制器都保存在存储器中.
当您从去B
到A
,你叫dismissViewControllerAnimated:completion:
上A
通过presentingViewController
的财产B
,是这样的:
[self.presentingViewController dismissViewControllerAnimated:YES completion:nil];
Run Code Online (Sandbox Code Playgroud)
(您也可以呼叫[self dismissViewControllerAnimated:YES completion:nil]
,系统会自动将请求转发给呈现视图控制器.)
之后,将设置为presentedViewController
属性,因此,如果没有任何其他强指针指向它,系统将对其进行内存释放.A
nil
归档时间: |
|
查看次数: |
1654 次 |
最近记录: |