ios - 在彼此 swift 3 之后直接关闭和打开新的 View Controller

标签 ios uiviewcontroller

我没有问题要你解决。我只想清楚一点。首先,让我解释一下我在做什么。

我有一个 View Controller ,可以调用 PHP 脚本来检索 json。在处理过程中,我显示了一个显示进度的 activityViewController。在检索到此数据后,立即进行另一个调用以通过电子邮件发送数据。在进行电子邮件调用之前,activityViewController 关闭并在新函数中打开一个新的,显示电子邮件发送过程的进度。完成后,将显示一条警报。

所有这些都有效,但我必须做一些事情才能让 View Controller 移动到下一个 View Controller ,而不会出现“警告:尝试在 [ViewController] 上呈现 [ViewController],同时已经呈现”。我不得不在代码中添加延迟,以允许在下一次尝试打开之前成功关闭前一个 View Controller 。就像我说的,这很顺利,延迟是 0.3 秒。相当快。

但是我想知道的是,viewcontroller 会不会在某些设备上缓慢关闭,运行超过 0.3 秒然后抛出错误?

我只想在这里学习.. :)

非常感谢任何信息。

最佳答案

您可以在呈现或关闭 View Controller 后使用完成处理程序。如果使用它,那么您的 View Controller 将摆脱这些警告,并且您的 Controller 将显得又厚又快,没有任何计时器。

aViewController.dismiss(动画:真){ viewController.present(另一个ViewController,动画:true,完成:nil) }

关于ios - 在彼此 swift 3 之后直接关闭和打开新的 View Controller ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44288157/

相关文章:

ios - 如何在 SKView 之上添加 SCNView

ios - Swift 3 - 实例化 View Controller 后没有成员错误

ios - 执行从 - TableViewCell.xib 到 UIView - 和 - TableView.xib 到 UIViewController -

ios - 当所有文本被选中时,UITextView 改变位置

ios - 如何在 Objective-C 的方程式中使用 "i"作为虚数

iphone - UIRefreshControl 需要实现超时机制。

ios - Xcode - iAd 错误 : The operation couldn’t be completed. 横幅 View 可见但没有内容

android - 我应该在我的 iOS 或 Android 应用程序中存储硬编码的加密 key 吗

ios - 允许 MPMoviePlayerViewController 横向播放,同时保留呈现 View Controller 的方向

ios - 如何在 iOS Extension 中获取状态栏高度