如何以编程方式更改或制作新的Launch Image?

时间:2015-03-12 10:55:32

标签: ios swift

我正在制作会员卡应用。当客户第一次运行应用程序时,系统会提示他导入他通过电子邮件收到的实体卡图像。从那时起,我希望启动屏幕(启动画面)显示他的会员卡以最大化速度,因为这是应用程序在VC加载时将执行的操作。

如何以编程方式更改启动屏幕的图像(使用Swift)?

谢谢你,Andrej

1 个答案:

答案 0 :(得分:1)

唯一可行的选择是在

中显示用户的忠诚卡
- (BOOL)application:(iOApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{

    CGRect screenBounds = [[UIScreen mainScreen] bounds];
    self.window = [[[UIWindow alloc] initWithFrame:screenBounds] autorelease];
    self.window.backgroundColor = [UIColor whiteColor];
    self.window.rootViewController = [[UIViewController new] autorelease];
    [self.window makeKeyAndVisible];

    // Put a default image
    // until we decide if the sign up screen needs to be displayed.
    UIImageView *defaultImageView = [[UIImageView alloc] initWithImage:[UIImage mydefaultLaunchImage]];
    [_window.rootViewController.view addSubview:defaultImageView];
    [defaultImageView release];

    //Perform application init asynchronously and remove default image after.
    //..........
}

但是,如果启动了应用程序,系统会在从后台恢复时显示它的屏幕截图。 如背景执行编程指南的Being a Responsible Background App部分所述,

  

在移至后台之前从视图中删除敏感信息。当应用程序转换到后台时,系统会拍摄应用程序主窗口的快照,然后在将应用程序转换回前台时会快速显示该窗口。在从applicationDidEnterBackground:方法返回之前,您应隐藏或隐藏可能作为快照的一部分捕获的密码和其他敏感个人信息。

您可以在此处执行的操作是在视图层次结构的顶部添加用户的忠诚卡片图像,以便iOS捕获它的屏幕截图。