iOS:如何延迟启动屏幕?
启动应用程序时,启动屏幕.xib将在所有资产初始化后立即删除 我想让启动屏幕至少停留1秒钟 有没有办法做到这一点iOS:如何延迟启动屏幕?,ios,launch-screen,Ios,Launch Screen,启动应用程序时,启动屏幕.xib将在所有资产初始化后立即删除 我想让启动屏幕至少停留1秒钟 有没有办法做到这一点 谢谢大家! 您可以创建一个使用LaunchScreen序列图像板的视图控制器,在ApplicationIDFinishLaunching或applicationWillFinishLaunching上显示它(未设置动画),并随时关闭它 请记住,苹果公司不鼓励这样做,因为这给人的印象是,你的应用程序需要更长的时间才能启动,这是糟糕的用户体验,可能会导致一些用户删除你的应用程序。如果你想
谢谢大家! 您可以创建一个使用LaunchScreen序列图像板的视图控制器,在
ApplicationIDFinishLaunching
或applicationWillFinishLaunching
上显示它(未设置动画),并随时关闭它
请记住,苹果公司不鼓励这样做,因为这给人的印象是,你的应用程序需要更长的时间才能启动,这是糟糕的用户体验,可能会导致一些用户删除你的应用程序。如果你想使用simple,你可以使用
NSThread
:
[NSThread sleepForTimeInterval:(NSTimeInterval)];
您可以将此代码放入ApplicationIDFinishLaunching
方法的第一行
例如,显示default.png 1.0秒
- (void) applicationDidFinishLaunching:(UIApplication*)application
{
[NSThread sleepForTimeInterval:1.0];
}
它将停止启动屏幕1.0秒。我想在这个问题上插入我的想法,我想写评论,但它不允许有太多行。我相信很多应用开发者之所以想这么做(推迟发布屏幕),是因为他们想为自己的公司打造应用/游戏的品牌形象
- (void) applicationDidFinishLaunching:(UIApplication*)application
{
[NSThread sleepForTimeInterval:1.0];
}
话虽如此,正如Rick Maddy在另一个答案的评论部分中所解释的,启动屏幕并不是为此而设计的。Launch screen的目的是让用户感觉应用程序正在即时运行,在实际数据加载到后面时显示空的UI(将显示等)
因此,要实现许多开发者的愿望,同时与苹果的HIG保持一致,您可以做的是:
同样的“简介”VC应该可以通过点击某个地方的“查看简介”按钮(可能在“关于”页面中)供用户使用。从不睡在主线程上。这样做实际上可能会导致iOS停止您的应用程序,因为启动时间太长Swift 4 Update
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool {
Thread.sleep(forTimeInterval: 3.0)
// Override point for customization after application launch.
return true
}
只需写一行代码
Thread.sleep(FortimInterval:3.0)
在didfishlauching…..
在appdelegate
类中的方法中
示例
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool {
Thread.sleep(forTimeInterval: 3.0)
// Override point for customization after application launch.
return true
}
找到了阿罕杜勒拉溶液 仅在AppDelegate类中复制和粘贴此代码
在didFinishLaunchingWithOptions()中调用此SplashScreenTiming()
重新思考这一点。用户希望使用你的应用程序,而不是盯着启动屏幕。我只会“推荐”(保留)这种方法用于需要显示信用/授权启动屏幕的游戏和其他娱乐内容。否则,让你的应用程序看起来尽可能快地启动。永远不要在主线程上睡觉。这样做实际上可能会导致iOS停止你的应用程序,因为启动时间太长。这仍然是错误的。这段时间应该用来让应用程序运行,而不是坐在那里无所事事。这是根据问题而定的。这并不是一个合适或好的解决方案。另一个答案解释了正确的解决方案(即使在启动屏幕上显示的时间过长是个坏主意)。好吧,这可能是对的,我记住了,但我相信较短的解决方案可以实现我想要的。我接受这个答案,尽管它不是我想要的,因为我不知道启动屏幕已经显示了多长时间。我希望苹果能允许最短时间的配置,因为用户不喜欢看到200毫秒的东西,并且在他们理解它是什么之前就把它拿走了……这是因为发布屏幕不是用来显示任何内容的,苹果实际上建议相反,使启动屏幕成为应用程序的主视图,而不包含内容。如果你想在某处显示你的徽标,你可以制作一个奇特的
About
屏幕。这是苹果公司在发布屏幕上的HIG@我也使用这种方法!到目前为止,这是最好的方法。它允许我们像Netflix应用程序一样向启动屏幕添加动画。不,不要这样做。永远不要在主队列上睡觉。这适用于Xcode 10.4.2和Swift 5.0。谢谢@Xcidian Solangi这在使用模拟器开发时非常有用。使用Xcode 11.3.1和Swift 5进行测试。启动屏幕通常过快而看不见。只要等一秒钟就足够了。根据其他警告,消除生产版本的暂停可能是好的。