gpt4 book ai didi

ios6 - iOS 6 Storyboard : modal view is not dismissing

转载 作者:行者123 更新时间:2023-12-04 06:22:15 24 4
gpt4 key购买 nike

我正在使用 Xcode 4.5 和 iOS 6。

我正在构建一个使用 Storyboard的通用应用程序。我有一个 View Controller ,在导航栏中有一个按钮。当点击按钮时,我使用 segue 将另一个 View Controller 呈现为模态。模态视图 Controller 在其导航栏中有一个取消和一个保存按钮。在 Storyboard 中,模态按钮项链接到新的 上的操作。退出应该展开到父 View Controller 、关闭模式并调用操作处理程序的操作。

这在 iPhone 上运行良好,但我在 iPad 上看到了问题。在 iPad 上,当模式全屏显示时,一切正常。当我将模式更改为页面表或表单表(在我的情况下这是所需的行为)时,会调用 Action 处理程序,但不会自动关闭模态视图 Controller 。

有没有其他人看到过这种行为?你有没有做些什么来修复它?

谢谢你。

最佳答案

感谢您提出这个问题,因为我刚刚遇到了同样的问题。我认为这是一个错误,但我还没有向 Apple 提交它。同时,简单的解决方法是调用 dismissViewController:animated:在您的 unwind:实现(即在通过 Exit 图标连接到 unwind segue 的 action 方法中),从而自己关闭模态视图。

我对这个解决方案的唯一担心是,如果这是一个错误并且 Apple 最终修复了它,他们的修复会破坏使用此解决方法的任何代码吗?只有时间证明一切...

稍后编辑 : 我发现了一个更好的解决方法。子类化您要展开的类的父(容器)类,并在那里实现展开。例如,在我的应用程序中,情况如下所示:

UISplitViewController
UINavigationController
MasterViewController
UINavigationController
DetailViewController ----> modal segue ----> ThirdViewController

从 ThirdViewController 回到 DetailViewController 的退出/展开转场演示了该错误 - unwind:调用实现,但不会关闭表单 View 。但是如果我继承 UISplitViewController 并实现 unwind:在那里,它工作正常。 ( unwind: 实现可以为空;关键是表单 View 会自动关闭。)所以显然这是与容器 View Controller 有关的问题,您可以通过让容器处理它来解决它。

查看我的示例项目,上传到 https://github.com/mattneub/Programming-iOS-Book-Examples/tree/master/ch19p561containerViewControllerStoryboard3Bug

关于ios6 - iOS 6 Storyboard : modal view is not dismissing,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13102400/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com