android 图标的格式,Android应用图标适配

Android应用图标常见的除了“方形”和“圆角矩形”,有的设备上还出现了圆形应用图标。同一个应用,为什么在不同的系统设备上显示的效果不一样呢?带着疑问查找了一下官方文档,原来是 Android 8.0(API 26)引入了自适应启动图标,它可以在不同设备型号上显示为不同的形状效果。

1. 自适应图标简介

在一台原始设备制造商 (OEM) 设备上,自适应启动图标可显示为圆形,而在其他设备上则可显示为方圆形。每个设备的原始设备制造商 (OEM) 都会提供一个蒙版,系统使用该蒙版渲染所有具有相同形状的自适应图标。自适应启动器图标还会在快捷方式、“设置”应用、共享对话框和概览屏幕中使用。

e01d8b9e8cee

我们可以通过定义 2 个图层(由一个背景图层和一个前景图层组成)来控制自适应启动图标的外观。必须要提供图标图层作为可绘制资源,而不使用图标轮廓周围的蒙版或背景阴影。

e01d8b9e8cee

在 Android 7.1(API 25)及更早版本中,启动图标的尺寸为 48 x 48 dp。现在必须按照以下准则调整图标图层的尺寸:

两个图层的尺寸都必须调整为:108 x 108 dp;

已遮挡的视图中显示的图标内层为:72 x 72 dp;

系统会为外层的 4 边保留 18 dp 的边距,以创建有趣的视觉效果(例如视差或脉动效果)。

注意:动画视觉效果由受支持的启动器生成。视觉效果可能因启动器而异。

e01d8b9e8cee

2. 应用图标介绍

在 AS 3.0后新建项目多了一个 mipmap-anydpi-v26 文件夹,这个文件其实就是用来存放自适应图标的,而且在 AndroidManifest.xml 文件中也会多了一个android:roundIcon设置。

...

android:icon="@mipmap/ic_launcher"

android:label="@string/app_name"

android:roundIcon="@mipmap/ic_launcher_round"

... >

这里 android:icon是设置普通图标,android:roundIcon是设置圆形图标;

e01d8b9e8cee

新增的 mipmap-anydpi-v26 目录下的 ic_launcher.xml 和 ic_launcher_round.xml 其实是 XML文件,而不是一张图片,代码如下所示:

在 Android 8.0(API 26)后,新加了元素。在标签中标签用于指定图标的背景层,标签用于指定图标的前景层。和内部元素均支持android:drawable属性。

背景文件 ic_launcher_background.xml 文件,内容如下图所示:

e01d8b9e8cee

这是一个使用SVG格式绘制出来的带纹理的底图。背景层并不是一定要用SVG格式的图片,你也可以使用普通的PNG、JPG等格式的图片,甚至是直接指定一个背景色都可以。

前景文件 ic_launcher_foreground.xml 文件,内容如下图所示:

e01d8b9e8cee

这里也是使用SVG格式绘制出了一个Android机器人的Logo,并且这个机器人还是带投影效果的。当然了,前景层我们也是可以使用PNG、JPG等格式的图片。

3. 应用图标适配

使用 Image Asset Studio 帮我们生成适配系统的应用图标,具体方法请移驾 —— 《Android Studio中 Image Asset Studio用法》

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值