美文网首页程序员
设置启动页图片

设置启动页图片

作者: coderLZ | 来源:发表于2017-12-22 14:54 被阅读0次

因产品需求,要在圣诞节和元旦期间分别用不同的图片作为启动页,元旦过后还原为之前的图片。一番尝试之后,虽没有很好的完成需求,但做以下总结,希望对读者有所帮助。


普通设置启动页
•方式一 用Images.xcassets
图一.png

将Launch Screen File 栏中的LaunchScreen删除,然后 点击 图中箭头所指,


图二 .png

点击Migrate之后去到Images.xcassets文件中会看到


图三.png
此时拖入准备好的相应尺寸的图片,运行即可,如果在某机型上不显示,请检查图片是否缺少对应的尺寸。

注:如不显示,可先执行Clean,在将模拟器或真机上的程序卸载后重新安装

•方式二 通过LaunchScreen.storyboard设置

如图一所示,不点击Use Asset Catalog且Launch Screen File 栏中选中LaunchScreen.storyboard
然后在LaunchScreen.storyboard的

图四.png 勾选之后
启动页即可在LaunchScreen.storyboard中设置,可用label等控件自己布局,亦可直接用图片。所用图片不必各种机型的尺寸都需要,一张即可。但是!!此方法只适用于支持iOS8和以后的系统,如果支持iOS7的话,测试是没有问题,但在提交到App Store时会报以下错误: 图五.png
注:如不显示,需要Clean 或将模拟器中程序删除重新安装。亲测有效!
为完成文章开始所说需求,做了以下尝试:
首先以上两种方式都不使用,测试发现程序在屏幕上下各留出黑框。所以,再不使用Images.xcassets的情况下LaunchScreen.storyboard 的 use as Launch Screen 一定要选中。

想要根据时间来设置启动页,只能在代码中操作,于是在didFinishLaunchingWithOptions方法中进行操作:

 UIView *launchView = [[[NSBundle mainBundle]loadNibNamed:@"LaunchScreen" owner:nil options:nil]firstObject];
    
    launchView.backgroundColor = [UIColor redColor];
    launchView.frame = self.window.frame;
    [self.window addSubview:launchView];
    
    UIImageView *imgView = [[UIImageView alloc]initWithFrame:launchView.bounds];
    imgView.image = img;
    [launchView addSubview:imgView];
    
    
    [UIView  animateWithDuration:3.0 animations:^{
        launchView.alpha = 0.0;
        
    } completion:^(BOOL finished) {
        [launchView removeFromSuperview];
    }];

但是效果差强人意。以为LaunchScreen.storyboard是在程序一启动就加载的,所以程序一启动会显示白屏(未在LaunchScreen.storyboard中设置图片),然后再出现代码所写效果。
不过看了几个大厂的app,他们实现启动页之后的广告页也是这个思路!


希望文章对你有所帮助,如有大神有更完美的解决方案请多多赐教。

相关文章

  • 设置启动页图片

    因产品需求,要在圣诞节和元旦期间分别用不同的图片作为启动页,元旦过后还原为之前的图片。一番尝试之后,虽没有很好的完...

  • LaunchScreen.storyboard 启动页设置图片不

    LaunchScreen.storyboard 启动页设置图片不显示 启动页白屏,重启设备,在运行即可

  • Android 设置秒开全屏启动屏

    如果启动页不需要更换图片: 添加主题 使用主题 SplashActivity设置透明背景 如果启动页需要更换图片:...

  • APP开发优化学习笔记1

    1、启动白屏、黑屏 给启动页设置Theme,看起来就像秒启动了。 一般启动页也就一张图片,直接设置了android...

  • iOS设置启动页,启动图片

    启动页就是每次启动App的时候首先会显示一个页面,然后才进入App根视图 三张图片教会你设置App启动图片 如果没...

  • swift有一句代码搞定APP引导页(图片/GIF/视频)

    APP启动引导页(图片/gif/视频) 在APP启动时候设置引导页,不管图片,gif,还是视频只需要一个方法 视频...

  • 2019-11-11

    flutter的启动页设置 1.把要用的启动页图片放置在此位置 2.修改launch_background.xml...

  • 2018-09-27

    如何设置启动页面的动画? /启动页只能有assets的图片或者storyboard图片的形式,所以无法直接做动画效...

  • iOS - 启动页时长

    设置启动图片的停留时间: 苹果默认启动页停留的时间很短,有时不满足我们的需求,这时我们就可以手动控制启动页停留的时...

  • APP启动页和沉浸式状态栏设置

    app启动页的正确设置方法一1、定义style welcome就是启动页图片2、引用 方法二方法一是在xml配置a...

网友评论

    本文标题:设置启动页图片

    本文链接:https://www.haomeiwen.com/subject/wwgtgxtx.html