在我的项目中,我有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的项目中使用了故事板。当我点击每个按钮时,特别是在iPad真实设备上需要大约1-2秒的延迟。糟糕的用户体验。我花了一些时间来搜索一些答案,但遗憾的是我没有找到解决方案,这就是我在这里问的原因..
提前致谢。
答案 0 :(得分:0)
当您按下按钮时,也许您应该考虑使用异步方法来加载控制器。
尝试使用
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)
});
})
答案 1 :(得分:0)
伙计们感谢您分享您的想法,但我想出了问题......实际上在我的应用程序中,我覆盖了一种导航方法,我用图像更改了导航栏的背景。图像太大,导致在呈现下一个视图之前导致一些延迟的原因。更改图像大小后,它现在可以正常工作。