有没有办法在viewdidload
上强制poptorootviewcontroller
?
我有一个应用程序,其中appdelegate
我创建了一个NavigationController
,而RootViewController
中有一个动画,通过locationdidupdate
委托方法调用了很多请求到服务器,然后,它推送另一个viewcontroller
然后应用程序正常工作。
问题是在应用程序期间有可能poptorootviewcontroller
,但是如果我这样做,它就不会启动任何东西,从动画开始并继续请求,所以应用程序没有工作正常。
我的问题是:
如何通过命令viewdidload
强制poptorootviewcontroller
?
我尝试使用viewwillappear
,但流程无法正常运行。
有什么建议吗?
谢谢!
答案 0 :(得分:1)
使用NotificationCenter
。丑陋的方式,但必须完成任务:)
如果希望viewdidload再次加载,请在此处...
[[NSNotificationCenter defaultCenter] postNotificationName:@"ContactListDisappeared" object:self];
在viewWillAppear或viewDidAppear中,有
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(doTheTaskHere:) name:@"ContactListDisappeared" object:nil];
为此设置操作......
- (void)doTheTaskHere:(NSNotification *)notification {
// call view did load again...
[self viewDidLoad];
}
我希望这就是你想要的。
今天只有我想要这样的东西,我就是这样做的。