在iOS应用中显示启动图像,但主线程没有睡觉

时间:2017-07-14 15:31:20

标签: ios splash-screen

您好我有一个基于位置的iOS应用程序,我想在显示启动图像时允许主线程运行(连接到服务器以检索信息等)。目前我将主线程设置为睡眠以显示给定时间的启动图像。如何在保持主线程运行的同时显示启动图像几秒钟?

1 个答案:

答案 0 :(得分:0)

使用ViewController作为初始viewcontroller,其Splash Image与Launch Storyboard相匹配,并在位置为最新且其他任务完成后显示/显示主viewcontroller。不要乱用线程。所有UI都在主线程上,因此当您使主线程休眠时,整个应用程序停止。

如果您只想让启动图像和虚拟视图控制器显示特定时间,请在viewDidAppear中使用延迟。

let when = DispatchTime.now() + 3 // Show for 3 seconds
DispatchQueue.main.asyncAfter(deadline: when) {
     // Present/Push/Segue to main app
}