首先......我是意大利人,所以我很抱歉我的英语不好!
所以......这是我的应用: 我正在使用导航控制器:在第一个视图中有10个按钮,每个按钮调用如下函数:
[self pushViewController:nameview animated:YES];
到另一个uiviewcontroller!所以我有11 uiviewcontroller! 每个控制器都像这里一样被删除
@interface ...
IBoutlet UIViewController *viewcontroller;
...
@property (nonatomic, retain) IBOutlet UIViewController *viewcontroller;
最后我要说我正在与IB合作!
我的问题是我的应用程序没有释放内存! 当我在一个视图中,我点击“backbuttonitem”(由IB创建,而不是由我创建)时,最后一个视图没有被释放(再次,抱歉我的英语不好)......如果用户看到所有10视图,应用程序接收警告按摩(低内存)!
如何在popviewcontroller操作之前发布最后一个视图?
谢谢:D
答案 0 :(得分:1)
当您将视图控制器推到导航控制器上时,您需要在导航控制器现在拥有它时将其释放。例如,您将执行以下操作:
UIViewController *controller = [[UIViewController] initWithNibName:@"Nib" bundle:nil];
[self pushViewController:controller animated:YES];
[controller release];
然后当您使用popViewControllerAnimated:
时,导航控制器将负责确保视图控制器从内存中释放。