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

objective-c – ios8 unwind segue无法使用UINavigationBarController和UITabBarController(在iOS 8.1中已修复),第1张

概述我刚开始使用 Xcode 6(beta 6)在iOS8上测试我的iOS7应用程序.我知道iOS 8已经弃用了“推”和“模态”segue,但我很高兴地发现我所有的segue都工作了……除了一个. 我构建了一个演示应用程序,以显示如果您的应用程序使用带有UINavigationController的UITabBarController,则从模态segue展开似乎会被破坏. (我看到了另一个放松的seg 我刚开始使用 Xcode 6(beta 6)在iOS8上测试我的iOS7应用程序.我知道iOS 8已经弃用了“推”和“模态”segue,但我很高兴地发现我所有的segue都工作了……除了一个.

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

以下是我更具体的看法:
[UITabbarContoller] – > [UINavigationController] – > [SomeVIEwController] – (Modal Segue) – > [此VIEwController无法解除]

有趣的是,如果你做另一个模态segue,你可以放松:
[UITabbarContoller] – > [UINavigationController] – > [SomeVIEwController] – (Modal Segue1) – > [此VIEwController无法解除] – (Modal Segue2) – > [此VIEwController可以解除]

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

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

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

谢谢阅读.

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

UPDATE

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

解决方法 通过创建自定义UITabbarController并使用自定义UITabbarController来覆盖UITabbarController中的vIEwControllerForUnwindSegueAction. 总结

以上是内存溢出为你收集整理的objective-c – ios8 unwind segue无法使用UINavigationBarController和UITabBarController(在iOS 8.1中已修复)全部内容,希望文章能够帮你解决objective-c – ios8 unwind segue无法使用UINavigationBarController和UITabBarController(在iOS 8.1中已修复)所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1239625.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-06
下一篇 2022-06-06

发表评论

登录后才能评论

评论列表(0条)

保存