【问题标题】:Back button does not show up in navigation controller导航控制器中不显示后退按钮
【发布时间】:2016-07-19 02:39:55
【问题描述】:

我在一个视图控制器中的表格单元格中添加了一个 show segue 到嵌入在导航控制器中的另一个表格视图。当我单击第一个视图中的单元格时,segue 按预期工作并显示新视图。但是,“返回”按钮(带有原始视图的标题)不会出现在导航栏中。

我搜索了 SO,发现过去曾提出过许多此类问题(针对 Swift 和 Objective-C)。他们中的大多数人建议第一个视图需要一个标题才能工作。我确实有一个头衔。我什至以编程方式添加了一个,以防万一。那没有帮助。建议向segue添加标识符的答案之一;那也没有帮助我。

我还能如何调试这个问题?

【问题讨论】:

  • 可能是因为您将新视图显示为modal,请尝试使用push,以编程方式显示,执行self.navigationController.pushViewController。而且,新视图也不应该嵌入到 navigationController 中,它必须和父视图是同一个 navigationController
  • 你为什么不在这里放一些代码。你呈现第二个 viewController 的方式
  • 我同意@Tj3n,因为你说“提出新观点”,你可能在做模态搜索。如果您以编程方式执行此操作,则使用 Tj3n 提到的 pushViewController,如果不是,请在情节提要中使用,而不是选择当前模态选择显示
  • 我刚刚发布了一些屏幕截图,应该表明我没有以模态方式呈现。我想避免为此编写代码。

标签: ios xcode uinavigationcontroller


【解决方案1】:

问题似乎是您正在推入一个全新的navigationController,将其删除,然后直接进入新视图Detail 本身,它们必须在同一个navigationController 中才能工作

【讨论】:

  • 我以为您将表格(或其他视图)嵌入到导航控制器中以获得自动“返回”按钮功能,不是吗?
  • 你应该只将你的父 VC 嵌入到导航控制器中,而不是你的子视图,如果你这样做了,它会成为一个全新的导航控制器,并且在按下后不会显示返回按钮,在这种情况下,只有带有单元格的 tableView 应该嵌入到导航控制器中,而不是 detail 视图
  • 这正是问题所在。万分感谢。我不知何故假设我需要在导航控制器中嵌入子视图。
【解决方案2】:

验证您没有在目标控制器中隐藏后退按钮...

【讨论】:

    【解决方案3】:

    我在情节提要中有一个left bar button item,删除了按钮,后退按钮出现了。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-02-16
      • 1970-01-01
      • 2012-01-01
      • 1970-01-01
      • 2017-11-06
      • 1970-01-01
      • 2011-11-29
      • 2017-06-19
      相关资源
      最近更新 更多