Android app启动图适配方法实例

作者:plx_csdn 时间:2023-07-31 16:23:34 

前言

app启动后的白屏问题,默认都是在splash页面加主题配置,主题配置一个背景来达到用户点击app图标就立马启动app的假象,大多情况下,使用背景单一的图片作为启动图,我们在设置背景颜色,就能适配的很不错了(背景颜色+logo图片的模式)。但是当启动图不再单一,而且复杂的图形时候,适配就成大问题了,下面介绍我的方法:

1、设置splash主题

<style name="MySplashTheme" parent="@android:style/Theme.Holo.NoActionBar">
       <item name="android:windowBackground">@drawable/splah_bg</item>
       <item name="android:windowFullscreen">true</item>
       <item name="android:windowBackground">@color/white</item>
       <item name="android:windowDrawsSystemBarBackgrounds">false</item>
   </style>

2、 splash_bg 设置:

<?xml version="1.0" encoding="utf-8"?>
<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
   android:src="@drawable/wecome4"
   android:dither="true"
   android:filter="true"
   android:antialias="true"
   android:gravity="fill">
</bitmap>

这里面的gravity = fill是设置图片拉伸的(可以用.9图片)

3、splash布局文件设置:

<ImageView
       android:id="@+id/iv_bg"
       android:layout_width="match_parent"
       android:layout_height="match_parent"
       android:layout_gravity="center"
       android:background="@drawable/splah_bg" />

注意这里的图片设置用 backgroup,而不是src。然后背景用上面的drawable文件,而不是直接使用图片,不然主题到splash布局切换的时候,图片会闪动。

注意这里的图片设置用 backgroup,而不是src。然后背景用上面的drawable文件,而不是直接使用图片,不然主题到splash布局切换的时候,图片会闪动。

注意这里的图片设置用 backgroup,而不是src。然后背景用上面的drawable文件,而不是直接使用图片,不然主题到splash布局切换的时候,图片会闪动。

上面说的是不能设置背景颜色的,如果启动图背景是纯色的,比如天猫那种,就一白色加一个logo,那种主题设置就不一样了,请用下面这种模式

<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
   <item>
       <shape>
           <solid android:color="#FFFFFF" />
       </shape>
   </item>

<item >
       <bitmap
           android:gravity="fill"
           android:src="@drawable/wecome4"
           android:dither="true"
           android:filter="true"
           android:antialias="true"
           />
   </item>
</layer-list>

附问题:项目启动时,会有白屏现象(在点击 应用图标到看到启动页之间)。

处理办法:

一:我们尽量减少的Application类里面的耗时操作

二:设置项目启动页的style类型为透明的

处理之后的现象:看不到白屏,但是点击应用图标之后,会静止一段时间(没有任何反应),过一会儿,才会显示启动页

三:设置项目启动页的style类型为指定图片A(在SplashActivity里面 ,就不用设置setcontentView()了)

处理之后的现象:看不到白屏,但是点击应用图标之后,会显示刚刚设置的style的图片,过一会儿,才会显示启动页

这种做法遇到的问题:

如果 这个图片A的尺寸较小,那么的大尺寸的手机上,启动页会看到图片A的周边是有空白了。

这个问题处理办法:

1.如果 这个图片A的背景 有着明显的规律(这个比较巧合,很难遇到),比如:从上到下有渐变时,可以使用layer-list里的shape的gradient

2.在UI设计图片A的时候,将这个图片A的重要信息(应用的名称,icon等等)之外的其他背景 用透明表示,这样就可以使用layer-list里的shape了,将这个图片A的其它地方用shape的颜色来填充了,就不会看到周边空白的现象了。

Android app启动图适配方法实例

四:设置项目启动页,在SplashActivity里面 ,用setcontentView(),设置xml布局里面的ImageView的scaleType为能自动填充满界面布局的类型:centerCrop(注意:这个类型会自动剪切掉图片A的周围,注意:的重要信息不要显示在图片的周边,尽量显示在图片的中间)

来源:https://blog.csdn.net/plx_csdn/article/details/122284665

标签:app,启动图,适配
0
投稿

猜你喜欢

  • Jetpack navigation组件超详细讲解

    2021-07-17 08:49:58
  • Java读写文件,在文件中搜索内容,并输出含有该内容的所有行方式

    2022-12-14 18:23:58
  • SpringMVC拦截器配置及运行流程解析

    2023-03-30 15:38:57
  • Java面试题冲刺第十八天--Spring框架3

    2023-04-17 22:44:29
  • C#加密知识整合 (AES,MD5,RSA,SHA256)

    2023-07-19 09:09:13
  • java GUI实现学生图书管理简单实例

    2023-11-11 05:00:05
  • Java日常练习题,每天进步一点点(32)

    2022-04-29 07:12:53
  • Java实现一个简易版的多级菜单功能

    2023-08-21 14:33:56
  • Android实现网易Tab分类排序控件实现

    2023-10-31 22:20:56
  • Java编程调用微信分享功能示例

    2022-10-16 06:39:49
  • C#利用递归算法解决汉诺塔问题

    2022-04-29 23:04:10
  • C#仪器数据文件解析Excel文件的方法浅析(xls、xlsx)

    2023-09-18 01:40:57
  • 解决Java中socket使用getInputStream()阻塞问题

    2022-06-16 14:33:14
  • java反射遍历实体类属性和类型,并赋值和获取值的简单方法

    2023-07-15 04:37:18
  • 基于Java解决华为机试之字符串加解密 

    2022-10-12 17:32:39
  • java swing 创建一个简单的QQ界面教程

    2022-09-08 06:51:39
  • 解决使用ProcessBuilder踩到的坑及注意事项

    2023-11-24 01:37:55
  • Java通俗易懂系列设计模式之建造者模式

    2022-11-01 23:27:24
  • Java新特性之Nashorn_动力节点Java学院整理

    2022-07-31 17:18:13
  • Java中SimpleDateFormat日期格式转换详解及代码示例

    2023-09-04 22:13:43
  • asp之家 软件编程 m.aspxhome.com