【问题标题】:iOS - navigation controller back buttoniOS - 导航控制器后退按钮
【发布时间】:2014-09-11 14:32:51
【问题描述】:

我正在使用情节提要开发 iPad 应用程序。在这个应用程序中,当用户点击“首选项”时,会出现一个模态视图。这个视图的一个按钮将用户发送到另一个视图控制器(但是这个视图有一个操作栏可以返回到他的根视图控制器),但是当用户点击操作栏后退按钮时没有任何反应(它被称为 navigationController popViewControllerAnimated),用户继续相同的观点。

谁能帮帮我??

谢谢。

更新:

处理后退按钮的代码:

- (IBAction)btnBackTapped:(id)sender {
   [self.navigationController popViewControllerAnimated:YES];
}

我正在使用 Segue(来自情节提要)来调用此视图控制器:

当用户点击“Meus Favoritos”时

他们将被重定向到这个页面:

segue 是模态的(从图像一到二)...

【问题讨论】:

  • 请贴代码并详细说明。您是在情节提要中使用 segue 还是使用代码来处理按钮按下?
  • 没有任何代码很难找出问题所在。然而,我在黑暗中的狂野刺伤是你没有将最后一个视图控制器正确地推入堆栈。
  • 当您以模态方式呈现视图控制器时,它可能不在navigationController 中,因此对navigationController 的引用可能是nil
  • @Theopile,我正在使用代码来处理按钮按下:[self.navigationController popViewControllerAnimated:YES];

标签: ios objective-c ipad


【解决方案1】:

当您以模态方式呈现视图控制器时,它可能不在导航控制器中,因此您的代码中对navigationController 的引用可能是nil,您可以检查一下吗?

如果你以模态方式展示你的视图控制器,这将起作用

[self.presentingViewController dismissViewControllerAnimated:YES completion:nil];

然而,如果你真的想使用导航控制器,你应该将呈现首选项视图控制器的视图控制器嵌入到导航控制器中,并使用show segue 而不是modal 呈现首选项视图控制器一个。

【讨论】:

  • @Beng-G,非常感谢你是对的! navigationController 是 nil,dismissViewControllerAnimated 对我来说非常完美......非常感谢你们!
猜你喜欢
  • 2012-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-07-10
  • 2011-11-29
  • 1970-01-01
  • 1970-01-01
  • 2019-06-06
  • 2017-06-19
相关资源
最近更新 更多