ios - 嵌入式 UINavigationController 的后退按钮不起作用

标签 ios uinavigationcontroller uikit uicontainerview

我正在通过界面生成器使用 Container View 控件将 UINavigationController 及其堆栈嵌入到我的应用程序中。

我遇到的问题是后退按钮对所有通过 Root VC 推送的 VC 都不起作用。

您在这些推送的 VC 上按下自动生成的后退按钮,但没有任何反应。

编辑:

没有写代码。目前都在IB中设置。

enter image description here

如您所见...容器 View 及其嵌入式 View Controller 设置为 UInavigation Controller 。左边的空白最终将成为一个可滑动的菜单——这就是设置的原因。然后在根 RV 上有一个下一步按钮,它连接到第二个 View Controller 。

enter image description here

该状态如上所示。按后退按钮(标记为测试)什么都不做。通常它会弹出顶 View Controller 并返回“测试”。显然,嵌入以某种方式干扰了正常的 UINavigiationController 功能。

我就是不知道怎么办。

另一个编辑:

在顶部 View Controller 上制作自定义按钮并手动调用

   [self.navigationController popViewControllerAnimated:true];

实际工作并且顶 View Controller 从堆栈中移除。

那么问题是为什么后退按钮不起作用?

最佳答案

当我忘记向导航栏添加点击手势识别器时,我遇到了类似的问题。后退按钮实际上收到了触摸(按下状态),但在您的示例中什么也没做。导航栏上的自定义按钮虽然有效。 删除手势识别器后,后退按钮再次起作用。

也许您的容器 View 中的某些其他 View /或手势识别器正在捕捉触摸......

关于ios - 嵌入式 UINavigationController 的后退按钮不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16092419/

相关文章:

ios - 创建一个 iOS 应用,但分发给多个客户端

uikit - 在 iOS 上,我可以访问系统提供的字体的 TTF 文件吗?

ios - UISearchBar 着色在 iOS7 上不一致

ios - 为什么在使用 initWithNibName 时需要 setNeedsDisplay

ios - 保存多个注释-NSUserDefaults

ios - iOS Swift 中简单的低延迟音频播放

ios - DismissViewControllerAnimated 关闭超过 1 个 Controller

ios - 想要更改 NavigationItem 标题

iOS - 弹出两个或多个 Controller 但不弹出顶部

ios - UIKit 在 iOS 中崩溃