1

我正在做一个基于 ARC 的项目。我有两个 ViewController。在第一个 ViewController 中,我有一个按钮,按下该按钮时,我正在推动新的 ViewController。

我这样做如下:

SecondViewController *second=[[SecondViewController alloc]initWithStrVal:self.strVal];
[self.navigationController pushViewController:second animated:YES];

我的问题是当我推送 SecondViewController 时,然后在被调用FirstView ControllerSecondViewControllerdealloc 方法中创建一个对象。FirstViewController

FirstViewController如果我只进行推送并且不创建in的实例,则不会调用 dealloc 方法SecondViewController。据我所知,当我推送视图控制器时,dealloc不应该在正常场景中调用,因为在基于 ARC 的项目的正常场景中不应该删除以前的 ViewController

编辑:

第一个 ViewController 在应用程序委托中设置如下:

self.viewController = [[ViewController alloc] initWithNibName:@"ViewController" bundle:nil]; 
self.navController=[[UINavigationController alloc]initWithRootViewController:viewController]; 
self.window.rootViewController = self.navController; 
4

0 回答 0