iOS - 每次应用打开时显示启动画面
问题描述:
我知道这是坏的UX,但是客户端要求每次用户打开应用程序时显示启动画面2秒。iOS - 每次应用打开时显示启动画面
我试图通过AppDelegate中通过实施这样的:
-
创建初始屏幕的一个实例变量的应用程序中查看控制器 :didFinishLaunchingWithOptions:方法中,和 设置其视图的α为0 。
在applicationWillEnterForeground 然后:我在 希望闪屏会显示每个用户打开 应用时,阿尔法设置为1,然后设置阿尔法回到0 2秒后。
现在,这个工作,但不正确。当应用程序打开时,主界面会立即显示,然后显示启动画面。
当然,这不是打算在主UI之前显示启动画面。
我试图说服客户端取消这个,但是没有人知道它是如何正确实施的(以防他们完全坚持要他们)?
从应用中:didFinishLaunchingWithOptions:
_tabBarController = [[UIStoryboard storyboardWithName:@"Main" bundle:nil] instantiateViewControllerWithIdentifier:@"TabBarController"];
[[self window] setRootViewController:_tabBarController];
[_tabBarController setDelegate:self];
_loadingViewController = [[UIStoryboard storyboardWithName:@"Main" bundle:nil] instantiateViewControllerWithIdentifier:@"LoadingView"];
[[_loadingViewController view] setAlpha:0.0f];
[_loadingViewController willMoveToParentViewController:_tabBarController];
[_tabBarController addChildViewController:_loadingViewController];
[_loadingViewController didMoveToParentViewController:_tabBarController];
[[_tabBarController view] addSubview:_loadingViewController.view];
从applicationWillEnterForeground:
[[_loadingViewController view] setAlpha:1.0f];
[self performSelector:@selector(removeLoadingView) withObject:nil afterDelay:2.0];
答
这是一种解决方法,但你可以尝试:
把一个UIImageView根视图控制器。 (或者用闪屏图像创建一个新窗口) 一旦真正的飞溅被移除,这个视图就会显示出来,然后你可以在你选择的效果之后删除它。
那么你有默认启动图像无论如何这是不够你的客户? – Popeye 2014-10-03 14:22:47
你的应用程序应该在返回后台并返回活动状态之后,返回到之前的状态吗? – Popeye 2014-10-03 14:23:19
相信我,我曾尝试过,但他们坚信,他们希望用户每次打开应用程序时都能看到启动画面。 – Nick 2014-10-03 14:23:45