首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >PopToViewController未更新UINavigationBar

PopToViewController未更新UINavigationBar
EN

Stack Overflow用户
提问于 2013-05-22 20:53:08
回答 1查看 225关注 0票数 0

我正在尝试弹出视图控制器堆栈两次,现在我已经做到了

代码语言:javascript
复制
UIViewController* controller = nil;

for (UIViewController* c in self.navigationController.viewControllers) {
    if (c.class == [ControllerIWantToPopTo class]) {
        controller = c;
        break;
    }
}

if (controller) {
    [self.navigationController popToViewController:controller animated:YES];
    return;
}

这可以按预期工作,但UINavigationBar会损坏。

我的堆栈看起来像这样的anotherController -> ControllerIWanToPopTo -> MiddleController -> ControllerOnTop

如我所愿,控制器堆栈将弹出到ControllerIWantToPopTo,但导航栏中的按钮是来自MiddleController的按钮,标题是来自ControllerOnTop的标题。

提前谢谢。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-05-22 21:53:29

因为我只是想测试这个行为,所以我在-viewDidLoad中运行代码,显然这导致了奇怪的问题。我的猜测是,在viewDidLoad中,UINavigationBar可能没有完全设置,这就导致了问题。

简而言之:不要试图弹出到-viewDidLoad中的视图控制器。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16692312

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档