xcode - 从 ViewController 推送到 TabBarController 需要延迟

标签 xcode swift

在我的项目中,我有 ViewController A 用于登录,当我按下登录按钮时,它显示 ViewController B,其中有四个按钮。当我单击button1时,我将showSegue直接发送到TabBarController并且它有两个选项卡。与按钮 2、3、4 相同,我将 showSegue 定向到 NavigationController。实际上这是我的 TabBarController 和 NavigationController 的层次结构:

点击按钮 1 即可:

TabBarController -> 
Tab1 -> NavigationController -> ViewController1
Tab2 -> NavigationController -> ViewController2

点击按钮 2、3、4 即可:

NavigationController -> ViewController

我在这个运行 Swift 2、Xcode 7 的项目中使用了 Storyboard。当我单击每个按钮时,几乎需要 1-2 秒的延迟,尤其是在 iPad 真实设备上。糟糕的用户体验。我花了一些时间来搜索一些答案,但遗憾的是我没有找到解决方案,这就是我在这里问的原因..

提前致谢。

最佳答案

也许您应该考虑使用异步方法在按下按钮时加载 Controller 。

尝试使用

dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), {

//Background Thread (Get your values - Run your requests)



dispatch_async(dispatch_get_main_queue(), {

//Update the UI (Give values to your outlets)

    });
})

关于xcode - 从 ViewController 推送到 TabBarController 需要延迟,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32919944/

相关文章:

ios - JSON Decodable 问题

ios - 如何让我的应用程序显示在 "open-in"- ios13 中 plist 文件的菜单中?

ios - 使用 Swift 创建 iOS 应用程序,需要知道如何使用 mysql 数据库跟踪用户数据?

ios - 设置页面添加或减去不同的图像阵列。使用 swift 和 xcode 进行编码

ios - 将表函数移动到另一个函数后,定义与先前的值冲突

objective-c - 识别在 Swift 中的自定义 listView 单元格中按下的按钮

Swiftui 无法分配给属性 : 'self' is immutable Error

ios - 如何使用触摸快速制作角色 Controller ?

ios - 迁移到惯用的 Swift 2 的 list (也就是 Swift 2 转换指南在哪里)?

swift - 在 Alamofire 4 中调试 HTTP POST 的正确方法; HTTP POST 不工作