0

在 UINavigationController 下使用 UITableViews 导航 3 个级别后,最终呈现一个 UIViewController,它调用:

[self.navigationController popViewControllerAnimated:YES];

我看到了这个结果,它是覆盖在 UITableView 之上的 UINavigationBar。

在此处输入图像描述

如何修复仅在弹出视图后发生的叠加层?

部署目标 6.0

我见过几个类似的听起来问题,但不完全是这种情况,也没有答案。

顺便说一句:使用导航栏后退按钮不会导致此行为。

4

2 回答 2

1

当从 UINavigationController 弹出多个视图时,我发现该视图必须完全加载,否则 UI 会混淆并显示奇怪。所以在我的情况下,我添加了一个检查并在加载后弹出视图。

- (void) viewDidAppear:(BOOL)animated {   
    if (self->doPopView) {
        [self.navigationController popViewControllerAnimated:YES];
    } else {
       // ...
    }
}

这种方法解决了 UINavigationController 与 UITableView 的显示问题。

于 2013-03-05T21:53:37.623 回答
0

您的视图没有完全卸载,因此这种奇怪的行为,您是否使用相同UITableViewController的所有钻取。如果它是相同的,它是否适用于二级钻取?

于 2013-02-19T19:09:46.610 回答