首先我像这样将我的 ViewController 添加到 NavigationController 中,
SecondViewController *viewControllerObj = [[SecondViewController alloc] init];
[self.navigationController pushViewController:viewControllerObj animated:YES];
[viewControllerObj release];`
但这会造成崩溃,当我在导航栏中按下返回按钮后将其推送到 SecondViewController。所以我在 .h 文件中创建 SecondViewController 对象作为属性,并像这样在 dealloc 中释放 viewControllerObj,
现在我像这样将我的 ViewController 添加到 NavigationController 中,
在 .h 文件中,
@property (nonatomic,retain) SecondViewController *viewControllerObj;
在 .m 文件中,
self.viewControllerObj = [[SecondViewController alloc] init];
[self.navigationController pushViewController:self.viewControllerObj animated:YES];
[_viewControllerObj release]; // in dealloc method
当我分析我的项目时,这显示viewControllerObj上存在潜在泄漏,所以我修改了这样的代码,
SecondViewController *temp = [[SecondViewController alloc] init];
self.viewControllerObj = temp;
[temp release];
[self.navigationController pushViewController:self.viewControllerObj animated:YES];
现在我清楚了潜在的泄漏
但是我不知道这是否正确,是否每个viewController对象都需要声明为Property并在dealloc时释放????