2017-05-11 61 views
-2

如何在swift 3中延迟launchImage显示时间? 或者,如何在函数Application(_ application:..?)中插入一个延迟方法以在几秒之后返回?如何延迟launchImage显示时间

+1

请更精确地(你想要延迟什么?它出现的时间,消失?...)并显示你所尝试过的(代码)。 – shallowThought

+0

这是一个非常错误的想法 – user3441734

回答

0

创建一个ViewController &用它作为LaunchScreen.Present &关闭,只要你想在appDelegate方法。

注推迟启动图像它给人留下不好的印象,以您的应用程序需要 很多时间

2

你不应该这样做。如果您不响应事件(例如,延迟返回),操作系统可以并且经常会杀死应用程序。

如果你的观点是首先有一个“闪屏”,请不要。他们是用户敌对的。这就是说....

你这样做的方式是把你的启动图像复制到你的根视图控制器的全屏图像视图。使用DispatchQueue.main.asyncAfter,计划在您想要的任何延迟后删除视图。如果你喜欢,你甚至可以用这种方式淡化它。同样,如果你想在用户回到应用程序时定期显示它,你可以将它放在applicationWillEnterForeground或类似的地方。 (请记住,启动屏幕仅在启动时显示,这是非常不可预测的。通常应用程序只是放在后台。)

请不要这样做;这是糟糕的用户体验。但这就是你如何做到的(我已经完成了所有这些事情)。

+0

是的同意..... –

+0

谢谢@ luk2302。 –

+2

@RobNapier我认为杀死开发者有点苛刻:D – luk2302

0

设计一个新的ViewController并设置作为初始的ViewController(在界面生成器),并且可以原因请看到另一个视图控制器在按钮点击或可以使用计时器和移动到另一个视图控制器。或者使用延迟功能

override func viewDidLoad() { 
    super.viewDidLoad() 
    let delay2 = 2.0 * Double(NSEC_PER_SEC) 
    let time2 = dispatch_time(DISPATCH_TIME_NOW, Int64(delay2)) 
    dispatch_after(time2, dispatch_get_main_queue(), { 
     self.performSegueWithIdentifier("HomePage", sender: self) 
    }) 
}