【问题标题】:Navigating across multiple view controllers跨多个视图控制器导航
【发布时间】:2013-04-27 22:06:06
【问题描述】:

我对 iOS 开发还很陌生。我正在开发一个与多个表视图控制器分离的应用程序。当我的应用程序启动时,它会加载视图控制器 A。然后我单击视图控制器 A 中的一行以继续查看控制器 B。视图控制器 B 中的导航按钮(后退按钮)显示视图控制器 A 的标题。然后单击在视图控制器 B 中的一行上,该行将转到视图控制器 C。当我单击视图控制器 C 中的一行时,我转到视图控制器 B。我的问题是,当我从视图控制器 C 转到视图控制器 B 时,视图控制器 B 上的导航按钮(后退按钮)显示视图控制器 C 的标题。我希望它仍然显示视图控制器 A 的标题。有人可以帮忙解决这个问题吗?示例代码会很棒。谢谢。

【问题讨论】:

    标签: ios uiviewcontroller navigation


    【解决方案1】:

    如果要使用转场从 C 转到 B,则需要使用展开转场。与使用 popViewControllerAnimated 相比,这具有以下优势:您可以使用 prepareForSegue 将信息发送回视图控制器 B,就像使用前向 segue 一样。

    【讨论】:

    • 感谢 rdelmar...这很好用。出于某种原因,B 中的表格视图不会使用 C 中选择的数据进行刷新。在 B 上执行 NSLog,我可以看到 C 中选择的数据已正确传递给 B,但 B 中的表格视图单元格不会刷新选定的数据。我试过 - (void)viewWillAppear:(BOOL)animated { [super viewWillAppear:animated]; [self.tableView reloadData]; } 但它只刷新第一行而不是其余行。
    【解决方案2】:

    您可以尝试使用popViewControllerAnimated 函数。看看这里:http://developer.apple.com/library/ios/documentation/uikit/reference/UINavigationController_Class/Reference/Reference.html#//apple_ref/occ/instm/UINavigationController/popViewControllerAnimated:

    我认为它使用起来非常简单,所以我希望你不需要示例代码。

    【讨论】:

      猜你喜欢
      • 2014-10-10
      • 1970-01-01
      • 1970-01-01
      • 2012-02-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-08-08
      • 2017-01-07
      相关资源
      最近更新 更多