小编NSD*_*Dev的帖子

ios8 unwind segue无法使用UINavigationBarController和UITabBarController(在iOS 8.1中已修复)

我刚开始使用Xcode 6(beta 6)在iOS8上测试我的iOS7应用程序.我知道iOS 8已经弃用了"推"和"模态"segue,但我很高兴地发现我所有的segue都工作了......除了一个.

我构建了一个演示应用程序,以显示如果您的应用程序使用带有UINavigationController的UITabBarController,则从模态segue展开似乎会被破坏.(我看到了另一个放松的segue帖子,但是它使用的是swift,我的演示应用程序使用的是obj-c).

以下是我更具体的看法:[UITabBarContoller] - > [UINavigationController] - > [SomeViewController] - (模态Segue) - > [此ViewController无法解除]

有趣的是,你可以放松,如果你做另一个模态segue:[UITabBarContoller] - > [UINavigationController] - > [SomeViewController] - (模态Segue1) - > [这个ViewController不能放松] - (Modal Segue2) - > [这个ViewController可以放松]

我还发现如果我删除UITabBarController或UINavigationController我可以放松,但我不打算改变我的整个应用程序UI架构:)

从我所看到的,根视图控制器永远不会收到对canPerformUnwindSegueAction的调用:fromViewController:withSender:它在iOS7中执行.

我的问题:我是否应该采用不同的方式让我放松工作?

谢谢阅读.

演示代码在这里:https://github.com/nmsasaki/UnwindDemo

UPDATE

这个问题似乎已经被iOS8.1修复了.(iOS 8.0解决方法是创建UINavigationController的自定义子类继续工作.)

objective-c ios8 xcode6-beta6 unwind-segue

7
推荐指数
1
解决办法
1938
查看次数

标签 统计

ios8 ×1

objective-c ×1

unwind-segue ×1

xcode6-beta6 ×1