收到警告内存 - 使用Instruments调试

时间:2014-03-20 11:14:37

标签: ios objective-c memory instruments

我在第一个iOS应用程序结束时。一切正常,但长时间使用后我有一些警告记忆。我已经使用Instruments检查我的内存分配,看起来我在每次viewcontroller push时重新创建对象。我真的不明白我要做些什么来改善我的记忆分配。

以下是我在仪器上的内容: Instruments stack

以下是一堆似乎有问题的代码:

UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"Main" bundle:nil];
    UIViewController *startHomeViewController = [storyboard instantiateViewControllerWithIdentifier:@"home-vc"];
    [self.navigationController pushViewController: startHomeViewController animated:YES];

我认为这是因为我在使用后不删除我的对象,当我重新推送此视图时,它会创建一个新对象。

我的应用程序有这个故事板:

Login -> push Tuto -> push Home -> push Enigma -> push LandingPage -> push DetailsPage -> popToRootViewController (login)

你知道我应该怎么做吗?

thx

1 个答案:

答案 0 :(得分:0)

保留startHomeViewController的实例,并仅在它为nil时实例化它。因此,这可以防止控制器每次都被创建。

if(!self.homeViewController) { UIViewController *startHomeViewController = [storyboard instantiateViewControllerWithIdentifier:@"home-vc"]; }