Android闪屏页适配

首先,为了避免第一次打开出现白屏,所以应该自定义style,添加anroid:windowBackground属性。此属性下放了一张1080*1920的闪屏图片,会出现在不同尺寸的屏幕上闪屏图片被压缩的情况。
于是,我的解决方法是:把闪屏图片上的元素分开来,在drawable下新建一个由闪屏元素组成的layer-list。splash.xml如下图:

<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android"><item android:drawable="@color/colorPrimary"/><!--logo图片--><itemandroid:gravity="center_horizontal"android:top="86dp"><bitmapandroid:gravity="top"android:src="@mipmap/splash_logo"/></item><!--logo下的文字图片--><itemandroid:gravity="center_horizontal"android:top="330dp"><bitmapandroid:gravity="top"android:src="@mipmap/splash_center_image"/></item><!--闪屏底部文字图片--><itemandroid:gravity="center_horizontal|bottom"android:bottom="23dp"><bitmapandroid:gravity="bottom"android:src="@mipmap/splash_botton_copyright"/></item>
</layer-list>

这样放在三个不同尺寸屏幕上,都没有出现压缩问题。
然而却出现了,在有的带有底部虚拟键的手机上,会导致闪屏底部文字图片被遮挡,显示不出来。
于是需要在style中再添加一个属性:android:windowDrawsSystemBarBackgrounds为false。style所需要的属性见下图:

<style name="SplashFullTheme" parent="Theme.AppCompat.Light.NoActionBar"><item name="android:windowFullscreen">true</item><item name="android:windowDrawsSystemBarBackgrounds">false</item><item name="android:windowBackground">@drawable/splash</item></style>

若项目中有设置状态栏的需求,一般都设置在BaseActivity中,注意闪屏activity不能有window.addFlags(WindowManager.LayoutParams.FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS);

Android闪屏页适配相关推荐

  1. android 闪屏页处理_Android应用闪屏页延迟跳转的三种写法

    闪屏页也称之为欢迎页.在打开一个App时,我们第一眼看到的往往是一个闪屏页面,之所以叫闪屏页,是因为它出现之后会短暂地停留几秒钟再跳转到其他页面.闪屏页除了使用户体验更好外,还能给app留出初始化数据 ...

  2. Android 闪屏页的实现

    文章目录 前言 一.闪屏页的实现方式的思考 二.闪屏实现 1.设置闪屏Activity为app首页 2.闪屏Activity的theme 3.闪屏Activity的内部实现 总结 前言 闪屏页作为ap ...

  3. android 闪屏页处理_一种Android闪屏页实现方法

    为什么会有闪屏页 记得很久之前,那时候android手机才刚刚出来,我们学校工作室里手机游戏开发相关的还更多的是window phone,可能很多人没有见过,就是跟电脑一样有开始菜单那种.那时候工作室 ...

  4. android 闪屏页处理_关于Android应用回到桌面会重复打开闪屏页

    现在存在有的时候发现回到桌面会重复打开闪屏页,我研究了一下,有如下结果. 重现方式: 用android的installer安装打开闪屏页,按Home键回到首页,然后点击launcher的图标会再打开一 ...

  5. 一种Android闪屏页实现方法(偏门别类)

    不说废话上代码 第一步: 第二步: 这样就OK了..试试吧 效果自行演示咯 关于第一张图片中代码说明:这个也很重要 /** * Created by L on 16/10/19. * 闪屏页 * * ...

  6. Android 12 SplashScreen(闪屏页)适配

    牢骚(废话) 谷歌真是吃饱了撑的,搞这搞那,Android12新出了一个强制闪屏页,效果就跟小米的闪屏页广告一样,只不过谷歌的是强制的,小米是可选的.不过谷歌再怎么搞,你还是要适配啊,难受. 正题 所 ...

  7. android 闪屏引导,启动体验设计-闪屏,启动页,引导页

    冷启动(cold start) 冷启动是指应用尚未运行,系统创建进程并初始化应用. 热启动是指应用已经运行但是在后台被挂起,从后台恢复应用. 冷启动时间稍微会长一点,在此期间可能会看到白屏或黑屏或感受 ...

  8. 【Android】android开发之splash闪屏页的四种实现方式,启动页的实现教程。

    2019独角兽企业重金招聘Python工程师标准>>> 作者:程序员小冰,GitHub主页: https://github.com/QQ986945193 新浪微博:http://w ...

  9. Android闪屏代码怎么写,安卓闪屏页SplashActivity的实现方法

    效果: 此gif来自https://www.jianshu.com/p/33a798ac3298,不知道怎么录gif,就在网上找了一个别人的 1.新建一个Activity,命名为SplashActiv ...

最新文章

  1. 13Flyweight(享元)模式
  2. 如何查看Linux内核是否为64位版本?
  3. nyc检测Javascript代码覆盖率
  4. 【问题】定时任务整理笔记附问题求大佬解答!!!!
  5. 【论文解读】百度提出新冠高风险小区预警算法,AAAI21收录!
  6. PHP上传方式base64图片的接收方式
  7. 解决 idea 运行 Spring Boot 项目启动慢的问题
  8. 这一次,MIT的科学家让谷歌AI把步枪误认成直升机
  9. MarkdownPad下载安装图文详解
  10. 阿里巴巴 CTO 首次分享技术战略
  11. libevent c++高并发网络编程_高并发-网络I/O
  12. vi 打开文件,行末尾有^M
  13. String.split()与StringUtils.split()的区别
  14. 从0开始,使用豆瓣数据集做一个基于FM和逻辑回归的电影推荐系统
  15. mtk开机声音与关机声音修改(原创)
  16. SSM三大框架工作流程与原理详解
  17. 【Vegas原创】“光驱无法访问,函数不正确”解决方法
  18. The inferior stopped because it received a signal from the Operating system signal name: SIGSEGV
  19. UMLChina公众号文章精选(20210706更新精选)
  20. 三玖天下第一!让三玖陪你写代码(为VScode加入背景图片)

热门文章

  1. 20210906:Hisi量化篇4-模型剪枝
  2. 位图文件(.bmp文件)结构
  3. 小马、文远、元戎三家Robotaxi试乘体验
  4. 工作日报http://www.cnblogs.com/suyang/archive/2008/05/18/1201990.html
  5. 禁止鼠标右键和鼠标选中
  6. 灵雀云受邀加入VMware 创新网络,共同助力企业数字化进程
  7. 7.AmbientLight(环境光)-影响整个场景的光源
  8. IDEA中spring boot+mybatis+freemarker时单元测试遇到的filed to load问题
  9. Web 前端开发1+X认证中级理论考试样题
  10. Windows WMIC查看CPU info