1

viewdidload有没有办法强制poptorootviewcontroller

我有一个应用程序,appdelegate我在其中创建了一个动画NavigationControllerRootViewController其中有一个动画,它通过locationdidupdate委托方法调用许多对服务器的请求,然后它推送另一个请求,viewcontroller然后应用程序正常工作。

问题是在应用程序期间可能有可能poptorootviewcontroller,但如果我这样做,它不会启动任何东西,从动画开始并继续请求,因此应用程序无法正常工作。

我的问题是:

我怎样才能强制viewdidload通过命令poptorootviewcontroller

我尝试使用viewwillappear,但流程无法正常工作。

有什么建议吗?

谢谢!

4

1 回答 1

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];
}

我希望这是你想要的。

今天只有我想要这样的东西,我做到了。

于 2013-10-21T14:54:26.913 回答