uisplitviewcontroller - 有时不会调用来自 UISplitViewControllerDelegate 的 willHideViewController

标签 uisplitviewcontroller ipad uisplitviewdelegate

我有个问题。
我的应用程序是一个标签栏 Controller ,它的第一个 View Controller 是一个 Split View Controller 。
这对 Apple 来说似乎不太好,因为文件说拆分 voew Controller 必须是根,所以也许这就是我的问题的原因。

问题是,有时不会调用 UISplitViewControllerDelegate 中的 willHideViewController,因此,有时不会创建上/左按钮,这很烦人。
我意识到,要重现此错误,请尝试多次:
- 横向模式。
- 选择与 Split View Controller 点击不同的选项卡。
- 在该选项卡中将 iPad 移动到纵向。
- 转到 Split View Controller 选项卡,有时,不会调用 willHideViewController,因此您不会看到上部按钮。但是,如果我将我的 iPad 旋转到横向,然后再旋转到纵向,它是固定的。

我试图手动强制几次旋转来解决这个问题,但没有运气。
我仍然必须尝试来自 github 或类似的任何 Split View Controller 克隆类。
你知道发生了什么或有什么解决方法吗?

在这里,我向您展示了两个正常工作的示例。

enter image description here
enter image description here
非常感谢你的帮助。

最佳答案

你在哪里设置 splitViewControllers 委托(delegate)?也许您可以在加载选项卡时设置委托(delegate)。听起来您只有在旋转一次时才设置它?

否则,see this example

在这里,他们让 TableViewController 成为 splitviewcontroller 的代表。也许您可以对 TabBarController 做同样的事情?

关于uisplitviewcontroller - 有时不会调用来自 UISplitViewControllerDelegate 的 willHideViewController,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8874149/

相关文章:

ios - 隐藏基于 TableView 选择的 UILabel

ios - 是否可以使用现有的 View Controller 为 iPad 实现 Split View

ios - 防止 UIPopover 上的动画被外面的点击取消?

ios - UISplitViewController:从 Compact 旋转到 Regular 时如何防止扩展

ios - Swift iOS-点击 SplitViewController 的 displayModeButtonItem 时触发操作

objective-c - UISplitViewController 非根,强制自定义旋转方法,使主视图消失

cocoa-touch - UISplitViewController 在尝试使用其中的 UINavigationController 后停止自动旋转

ios - 如何限制文本字段在swift中只接受十进制值

ios - UIGraphicsBeginImageContextWithOptions 非常严重的内存灾难

ios - 具有多个详细 View 的 UISplitView(带有 Storyboard )