【问题标题】:iOS 8 + interactive transition + nav bar shown = broken?iOS 8 + 交互式过渡 + 显示导航栏 = 坏了?
【发布时间】:2015-10-10 20:01:40
【问题描述】:

我们正在尝试在我们的应用中添加两个视图之间的交互式过渡。我们可以让它在 iOS 7 上正常工作,或者在 iOS 8 上不显示导航栏。但是,我们需要显示一个导航栏。为了演示(部分)我们遇到的问题,我创建了一个小原型,截图如下所示。我尝试了 UIPercentDrivenInteractiveTransition,但发现有足够多的帖子声称它有问题,所以我摆脱了它。

来源https://github.com/xaphod/TransitionBugger

这是它在 iOS 8 上的样子,带有一个导航控制器,但导航栏设置为不在情节提要中显示:它工作正常

这是完全相同的内容,但显示了导航栏。当有导航栏时,不知何故在转换完成后 toViewcontroller 中没有收到任何触摸(注意 UIButton 没有收到触摸事件):

也许说明导航栏似乎处于损坏状态。观察如果我将应用程序置于后台并返回到它会发生什么 - 导航栏状态发生变化:“项目”栏按钮仅在应用程序进入前台时才会更改为“返回”。为什么会这样?

我已经阅读了至少 12 篇关于 stackoverflow、objc.io 和其他地方的帖子,其中包含许多建议的解决方案和教程等。我们都尝试过,包括这些帖子:

"From View Controller" disappears using UIViewControllerContextTransitioning(我们的主应用遇到的另一个问题)

Touches not recognized after custom transition

...但它们仅在没有显示导航栏时起作用

我们如何在 iOS 8 上使用导航栏制作交互式过渡?非常感谢所有帮助。

【问题讨论】:

    标签: ios objective-c cocoa-touch


    【解决方案1】:

    我们最终放弃了使用 UINavigationControllerDelegate 方法,因为我们也需要过渡视图来覆盖标签栏。当我们转向模态全屏过渡方法时,这个问题就解决了。

    【讨论】:

      猜你喜欢
      • 2017-12-07
      • 2017-01-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-10-29
      • 2015-07-01
      • 2017-11-26
      相关资源
      最近更新 更多