以编程方式更改启动屏幕图像

问题描述:

是否允许通过代码设置启动屏幕图像。
因为我需要多次更改它?以编程方式更改启动屏幕图像

+0

“适用”是什么意思? – Jerry

+0

我猜不行,因为你必须创建自己的屏幕 –

+1

启动图像在特殊地点的特殊名称IPA中,所以你不能用任何方法改变IPA。 – jayatubi

你不能。

您必须创建自己的启动屏幕,显示在默认的iOS应用程序之后。

当启动屏幕显示时,您的应用程序将处于加载状态。

即使在显示启动画面时,也不会完全执行- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions

所以很明显,你没有任何访问你的应用程序,所以在这一点上你不能执行任何代码。

Neah,你不能。抱歉!!!

iPhone应用程序的默认图像必须是包中的固定图像文件。你不能动态改变它。

尽管您可以添加动画以使其具有创意。

只能加载单个图像作为开机画面时,应用程序启动..

但是,如果你想启动任何图像programatically..Before应用加载主屏幕就像飞溅screen..you可以在

如下使用

didFinishLaunchingWithOptions AppDelegate中的委托方法..

UIImage *splashImage = [UIImage imageNamed:@"Splash_Img.png"]; 
    UIImageView *splashImageView = [[UIImageView alloc] initWithImage:splashImage]; 
    splashImageView.frame=[[UIScreen mainScreen] bounds]; 
    [self.window.rootViewController.view addSubview:splashImageView]; 
    [self.window.rootViewController.view bringSubviewToFront:splashImageView]; 
    [UIView animateWithDuration:1.5f 
          delay:2.0f 
         options:UIViewAnimationOptionCurveEaseInOut 
        animations:^{ 
         splashImageView.alpha = .0f; 
         CGFloat x = -60.0f; 
         CGFloat y = -120.0f; 
         splashImageView.frame = CGRectMake(x, 
                  y, 
                  splashImageView.frame.size.width-2*x, 
                  splashImageView.frame.size.height-2*y); 
        } completion:^(BOOL finished){ 
         if (finished) { 
          [splashImageView removeFromSuperview]; 
         } 
        }]; 

上面的代码是不闪屏。但它会在主屏幕加载之前加载。

不,您不能以编程方式更改初始屏幕,应用程序图标或应用程序名称。
它们全部保持静态无法更改。
但是,您可以使用UIImageView创建自定义启动画面,并可以通过编程方式进行更改。