推送视图控制器时延迟(iOS)

时间:2017-10-04 17:38:13

标签: ios performance

我有一个UIViewController,调用此ViewControllerB,我试图从ViewControllerA推送。 ViewControllerB有很多来自库(日历,分段控件等)的自定义UI,以及带有tableViews的UIPageViewController。

我注意到当我按ViewControllerB时有1-3秒的延迟,并且在使用时间分析器时,由于在viewDidLoad中设置了这些UI,我能够将其跟踪到主线程的阻塞。因此,在推送视图控制器之前,应用程序似乎需要一些时间来设置UI。

设置大量UI但避免在推送视图控制器时阻止主线程的最佳方法是什么?

1 个答案:

答案 0 :(得分:3)

初始化阻塞主线程的布局太多了。只有init,viewDidLoad和viewWillAppear方法中必需的布局,以及viewDidAppear中的其他任何内容。