1

我有两个 ViewControllers.. 第一个是 UIButtons 网格,第二个是基于他们按下的按钮的详细描述。

我期望在他们按下 UIButton,然后按下导航栏中的后退按钮后,内存的净变化应该为零。

相反,我看到内存增加,我不知道为什么。当用户单击返回按钮时会发生什么?如何完全解除详细的 ViewController,从内存中完全释放它?我有什么具体的事情要做吗?

弧,xcode 4.2.1,iOS 5.0+

谢谢!

编辑:我使用了泄漏工具,没有发现泄漏。在 prepareForSegue 中,我将一个作为 NSDictionary 的应用程序对象传递给我的新 ViewController。

-(IBAction)toApp:(UIButton*)sender {   
[self performSegueWithIdentifier:@"showApp" sender:sender];
}

- (void) prepareForSegue:(UIStoryboardSegue *)segue sender:(UIButton*)sender {
    AppViewController* vc = [segue destinationViewController];
    vc.app = [self.apps objectAtIndex:sender.tag];
}
4

1 回答 1

1

您可能有一个保留循环。使用带有Heapshot的 Instruments 中的 Allocations 工具找到它。

于 2012-07-19T19:07:11.090 回答