xCode导航后退按钮不弹出详细视图

Posted

技术标签:

【中文标题】xCode导航后退按钮不弹出详细视图【英文标题】:xCode Navigation Back Button not popping detailview 【发布时间】:2014-10-16 14:12:32 【问题描述】:

每当我在最终详细视图上按下“返回”按钮时,它都不会返回到表格视图。

我有一个这样的故事板设置:

UITabViewController -> UINavigationController -> UITableView -> UINavigationController -> UIView(细节视图)。

当我运行我的程序时,我看到了返回按钮,但单击它什么也没做。

这里是 DetailViewController.m 的代码:

- (void)viewDidLoad 
    [super viewDidLoad];

    UIBarButtonItem *backbtn = [[UIBarButtonItem alloc] initWithTitle:@"Go Back" style:UIBarButtonItemStylePlain target:self action:@selector(gobackBtn)];
    [self.navigationItem setLeftBarButtonItem:backbtn];

    [self configureView];


- (void)gobackBtn

    [self.navigationController popViewControllerAnimated:YES];

好像[self.navigationController popViewControllerAnimated:YES]; 什么都不做。

我没有想法。为什么后退按钮不“弹出”详细视图?

【问题讨论】:

你不应该有第二个UINavigationController @SimonMcLoughlin 如果没有第二个导航控制器,我在详细视图中似乎根本没有任何导航栏:i.imgur.com/HskoyEk.png 为什么所有的反对票... 【参考方案1】:

您的详细视图控制器是导航控制器的根视图控制器。所以“弹出”什么也没做。您需要关闭导航控制器。从技术上讲,您应该使用代表告诉您的 TableViewController 将其解雇,但我认为

[self.navigationController dismissViewControllerAnimated:YES completion:NULL];

在细节视图控制器的 goBackButton 方法中可以解决问题。

【讨论】:

以上是关于xCode导航后退按钮不弹出详细视图的主要内容,如果未能解决你的问题,请参考以下文章

导航“后退”按钮暂停,以便在弹出之前做一个快速动画

xcode 5中的导航栏对象不显示后退按钮并且没有功能

按下导航栏中的后退按钮并弹出视图B后更新视图B后面的视图A.

如何在 Xcode 中的 UINavigationController 上创建后退按钮?

视图控制器上的 Xcode / Swift 后退按钮

连续推送视图控制器时缺少导航或后退按钮标题