如何延迟为Default.png?
-
20-09-2019 - |
题
我怎样才能延缓应用程序加载,显示启动画面更长?
解决方案
您应该让该应用开始照常然后使显示具有在其上的相同的图像作为闪屏的第一视图。启动一个定时器,然后替换与真实应用程序根认为视图几秒钟后。
故意延迟的实际应用程序启动是一个很大的禁忌。
其他提示
更新:不认真,不这样做。
或US C函数
sleep(9);
在的applicationDidFinishLaunching把这样的:将引起你的程序暂停9秒,任何其他整数可被输入,以及
编辑:我已经学到了很多在过去的一年。不要这样做。原因是,如果时间太长的跳板,会自动停止应用的启动。该定时记录不当所以即使1秒可导致该应用失败。
此问题是相似的:闪屏等丝锥报复3 一>
基本上,在您的applicationDidFinishLaunching :,上的包含您为Default.png其他视图顶部添加的图像视图。
请参阅为什么你应该不会耽误这样你的应用程序加载上面的讨论。但是,如果你碰巧有地方睡了短时间的情景将是最好的交换了看法开销,使用NSThread的 sleepForTimeIntervale 的而不是睡眠()。它更框架友好和你有过睡眠时间更精细的控制:
[NSThread sleepForTimeInterval:0.75]
我有一种情况,客户不得不试玩启动图像。所以,这是我的解决方案..
- (void)applicationDidBecomeActive:(UIApplication *)application
{
UIImageView *defaultImageView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"Default@2x.png"]];
[self.window addSubview:defaultImageView];
sleep(2);
[defaultImageView removeFromSuperview];
[defaultImageView release];
/*
Restart any tasks that were paused (or not yet started) while the application was inactive. If the application was previously in the background, optionally refresh the user interface.
*/
}
您可以用它睡觉的方法来得到这样的结果“
sleepForTimeInterval
”,如果你想要得到它推出的时间,做这样的:
- (void) applicationDidFinishLaunching:(UIApplication*)application
{
[NSThread sleepForTimeInterval:8.0];
}
将8秒延时发射
警告:但不建议由苹果,因为它会约时间长watchdod为您的应用程序加载,它可以杀死你的应用程序。 但是,柜面,如果你需要得到一些具体的截图或者一些内部使用,你可以用它来解决的目的,但从来没有在应用程序提交。
不隶属于 StackOverflow