关于Android启动页适配的一些经验

关于Android启动页适配的一些经验

正如我们所知道的,Android应用有冷启动和热启动两种方式,正常冷启动过程会有一个短时间的白屏/黑屏(根据设置的Theme主题不同)的状态,网上提供的方法有在theme里设置

    
    

用了这种方式虽然没有白屏/黑屏 但是会让用户感到启动延迟了2s左右,而且这种方式会把Android长久以来做的应用启动优化打回了原型。所以是不推荐的。
然后们谈另一种方法,就是layer-list,这种方法就是把一张图片进行裁剪,不要纯色的背景图,只保留图片上不规则的图形,然后在xml文件里进行拼接,从而形成一张图片,这样做的好处就是可以适配的手机分辨率比较丰富,图片不会有变形,但是如果启动图内容太过丰富就会导致xml文件里的图片拼接出现重叠等问题,而且layer-list的一些方法只在SDK>=23时有效,就是说我们还要准备一张图适配SDK<23的情况。(可能只看我的描述看不懂,这里推荐一个文章 Android启动页黑屏及最优解决方案)
我还在网上看到过一种方式就是准备一张图片要求1440x720(720p),内容有效区域小于990px,显示到启动页的时候会进行裁剪,只保留中间区域,从而保证图片不会变形,给出链接Android应用启动页的适配这种方式他没有给出具体的实现方法,所以也没办法验证是否正确。
下面才是这篇文章的重点,其实就是启动页一张图片,适配不同的手机分辨率,我们知道新建一个项目的时候会有很多的drawable(drawable-hdpi/drawable-mdpi/drawable-xhdpi/drawable-xxhdpi)这些都是为了适配不同分辨率手机存在的,那么如果新建一个特定的drawable文件夹指定屏幕尺寸是不是可以直接就适配那种屏幕了呢,想到就要做到,于是我新建了一个drawable-w768(我的设备是定制的 h-1024 w-768 Android系统是5.1)的文件夹把对应尺寸的启动页图片放进去
在这里插入图片描述
然后运行项目发现真的可以!!!woc 我真是个天才 。

欣喜之后便是忧愁,仔细想想这样做如果设备多了,各种手机分辨率都要搞一张图,肯定也是很麻烦的,不过还好只是一张启动页图片。写这篇文章就是为了记录我的发现,并没有在各种设备上做过多的验证(有时间肯定会验证,验证之后就可以大胆的搞了),所以各位看官,如果不能适配你们的设备不要喷我哦!!!

你可能感兴趣的:(学习记录,android,android,studio,java)