我有一个启动进程的模态视图控制器。如果我关闭模态视图控制器,然后重新打开它,它将从它停止的位置继续。我想要的是(解雇后)重置模态视图控制器,取消所有处理并将其重置为初始状态。有办法吗?
干杯
答案 0 :(得分:2)
不要将UIViewController
子类对象保存在ivar中,只要alloc] init]
每次要呈现一个新对象。
答案 1 :(得分:2)
对不起,如果我会说一些明显的事情,但我花了一些时间来弄清楚如何做到这一点:
不要将
UIViewController
子类对象保存在ivar中,只要alloc] init]
每次要呈现一个新对象。
在我的情况下,我在MasterViewController.h中有这段代码
@property (strong, nonatomic) ContactsDetailViewController *detailViewController;
和MasterViewController.m中的这个
@synthesize detailViewController = _detailViewController;
if (!self.detailViewController) {
self.detailViewController = [[ContactsDetailViewController alloc]
initWithNibName:@"ContactsDetailViewController"
bundle:nil];
}
您应该删除此代码并使用下一个代码,您可以在其中推送模态视图控制器:
ContactsDetailViewController *detailViewController = [[ContactsDetailViewController alloc] initWithNibName:@"ContactsDetailViewController" bundle:nil];
detailViewController.title = @"View Controller"; // for example
[self.navigationController pushViewController:detailViewController animated:YES];
注意:我在这个项目中使用ARC
希望它会对某人有所帮助
答案 2 :(得分:0)
在用于模态视图的viewController的viewDidUnload方法中,尝试停止任务。