在第一个视图控制器A中,我调用“presentModalViewController”,然后立即将B视图控制器添加到屏幕。
问题是,“A”视图控制器是否仍然在内存中?这意味着,在我将“B”视图控制器弹出屏幕后,是否会调用viewDidLoad方法?
那么调用pushModalViewController方法呢?第一个视图控制器会留在内存中吗?
答案 0 :(得分:0)
首先,您无法推送或呈现视图,它必须是UIViewController
。
其次回答你的问题是正确的,当推或呈现“B”ViewController时,“A”仍然留在内存中。
当“B”ViewController弹出堆栈时,“A”的viewDidLoad
不会被调用。
如果你想要一个ViewController中的函数,那应该总是调用,那么你可以使用
-(void)viewWillAppear:(BOOL)animated
-(void)viewDidAppear:(BOOL)animated
即使在弹出“B”ViewController后,也会调用它们。