来自 NSobject 类的 popToRootViewControllerAnimated 给出错误
Posted
技术标签:
【中文标题】来自 NSobject 类的 popToRootViewControllerAnimated 给出错误【英文标题】:popToRootViewControllerAnimated from NSobject class giving errors 【发布时间】:2013-08-12 01:53:39 【问题描述】:如果出现错误,我会尝试从导航堆栈中弹出所有视图。错误代码在 NSObject 类中,所以我无权访问导航控制器。这是我尝试过的代码
[self.navigationController popToRootViewControllerAnimated:FALSE];
我想知道从 NSobject 类的堆栈中访问和弹出视图的最佳方法。
任何帮助将不胜感激。
【问题讨论】:
你尝试过 Unwind segue 吗? 不,我没有,我什至从未听说过这个.. 大声笑,您可能需要知道的一件事是,当发生此错误并需要解决时,我可能处于几种不同的观点之一回到那个时候的根视图控制器。 不确定这是否可行,但可能会从 NSObject 发送一个 NSNotification 到可以访问 navigationController 的类。 但是为什么要从 NSObject 类中调用它呢? 因为它是一个错误类,它向用户呈现 UIAlertView。我不想在每个视图控制器中写入同样多的错误来处理错误..这样更干净。 【参考方案1】:所以,你确实想要 Unwind segue。简单的工具,非常有用且易于实现。无论您在层次结构中有多深,此 segue 都会成功地将您带回 ViewController。
我认为了解如何实现此功能的最佳方式描述为 in this answer 和 in this answer(我更喜欢)。
这应该适合你。
【讨论】:
好的,非常感谢......我会在更新 xcode 后尝试这样做,因为我看不到那个退出按钮。 我不确定这是否可行,因为我没有使用故事板? @HurkNburkS 呸!骗子!我应该检查一下...您可以做的是在最新的 VC 中使用popToRootViewControllerAnimated
方法创建一个自定义方法,然后使用 this answer 从另一个类中调用它。
对不起,我应该解释得更好:P 伙计不确定这是否会像我计划的那样工作......
也许,你有没有在评论中尝试我的建议?以上是关于来自 NSobject 类的 popToRootViewControllerAnimated 给出错误的主要内容,如果未能解决你的问题,请参考以下文章
处理来自另一个类的 CLLocationManager 委托
为啥我们不能在不从 NSObject 继承类的情况下迅速采用协议?