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

1. 自适应图标简介

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

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

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

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

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

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

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

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是设置圆形图标;

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

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

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

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

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

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

3. 应用图标适配

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

android 图标的格式,Android应用图标适配相关推荐

  1. android 图标的格式,Android Design

    图标就是一个表示屏幕内容并为操作.状态和应用提供第一印象的小幅图片. 在为应用设计图标时,需要牢记设备是多种多样的,这就带来了不同的像素密度(详见 设备与显示 ).为了应对这一问题,提供不同尺寸的图标 ...

  2. android开机图片格式,Android平台启动图使用.9.png图片

    概述 目前HBuilder|HBuilderX中仅定义几种标准分辨率的启动图配置,而实际上存在很多不同分辨率的手机,导致启动图会进行拉伸或压缩引起变形,Android平台为了解决此问题就出现了可以适配 ...

  3. android v3签名格式,Android Apk签名修改V1,V2,V3,V4

    Unity游戏打出 Android Apk 包,默认签名方式是V1,V2方式的. 但是九游要求只能用V1签名方式.那就对生成的 Andorid Apk包重新签名就OK了. 改签环境 改签 Androi ...

  4. android 闹铃 格式,android闹铃简单实现

    1.闹铃activity package com.example.myalarm; import java.util.Calendar; import java.util.Date; import j ...

  5. android车载支持格式,Android车载版来了:车机实现全部功能

    汽车厂商沃尔沃和奥迪宣布,将与谷歌合作,开发基于Android的车载信息娱乐系统,并直接集成至车辆. 这一合作的详情将在本周晚些时候的谷歌I/O开发者大会上公布.目前已知,这一合作将独立于谷歌当前专注 ...

  6. android车载支持格式,安卓全面屏适配攻略(适配超长车载主机)

    前言 2017年9月,拜腾的横空出世,打破了车载主机界一直以来的沉寂,各大媒体也是不吝词藻的对它的超长中控屏进行了大肆的报道.这个时候作为同为车机供应者的诸位友商心里却不那么的平静,恨不得在发布会现场 ...

  7. android 扫描所有图片格式,Android获取本机各种类型文件列表(音乐、视频、图片、文档等)...

    介绍 本篇介绍Android获取本机各种类型文件的方法,已经封装成工具类,末尾有源码下载地址. 提示 获取音乐.视频.图片.文档等文件是需要有读取SD卡的权限的,如果是6.0以下的系统,则直接在清单文 ...

  8. android post json格式,Android中post请求传递json数据给服务端的实例

    在最近的项目中有个需求是这样的: 入参封装成JSON,EXAMPLE: { "uuid": "iamauuid","clientType": ...

  9. android 蓝牙打印格式,Android蓝牙打印格式排版

    最近由于项目需求,在做蓝牙打印的功能.Android连接蓝牙打印机网上满天飞,但是内容的排版却很少. 我也是研究了下,自己封装了一个工具类希望可以方便开发. 这个类叫 BluetoothPrintFo ...

  10. android开发图片格式,Android程序开发如何处理图像格式类及图像转换

    在Android程序开发过程中,明确哪些图像格式类(ImageFormat.PixelFormat及BitmapConfig等)及图像(JPG.PNG及BMP等)的转换方式非常重要,在以后的程序开发过 ...

最新文章

  1. 设计灵感|三维时代!C4D人物设计案例
  2. android方向触摸事件,Android触摸事件传递机制,这一篇就够了
  3. bch怎么挖_BCH与BSV的减半,给目前正在反弹中的行情带来什么?
  4. VB 超简单的屏幕截图代码
  5. AES-GCM加密算法
  6. matlab 自动交易系统设计3
  7. Axure中SVG矢量图标的使用方法
  8. 运维 之 常用运维工具
  9. linux 升级内核 声卡 失效,Deepin 20升级后系统无声音的另一种解决方案
  10. 硬件设计-USB2.0电路设计
  11. 古人是怎样酿醋的(图)
  12. 芒果魔兽世界单机没法运行服务器,大芒果魔兽世界单机版局域网联机方法
  13. c语言 pause,C语言中的pause()函数和alarm()函数以及sleep()函数
  14. python涨工资问题_7-45 jmu-python-涨工资 (10 分)
  15. 日本财险容灾案例揭示小公司的容灾之道
  16. 达内python第一次月考题目_第一次月考总结
  17. 异步加载loading
  18. 【电子水尺】高精度测量、免布线、远程传输数据
  19. tornado web高级开发项目之抽屉官网的页面登陆验证、form验证、点赞、评论、文章分页处理、发送邮箱验证码、登陆验证码、注册、发布文章、上传图片...
  20. 究竟什么才是云计算 云计算的优势都有哪些

热门文章

  1. Protein Cell:扩增子和宏基因组数据分析实用指南
  2. vulstack2(hydra爆mssql、免杀360、cs、msf渗透、weblogic、computer brower服务支持6118,域管密码过期kerberos认证错误导致部分域服务不可用)
  3. 很荣幸,和各位一起创造了历史
  4. Java使用while循环计算调和数列的和并打印
  5. 如何生成SSH key?
  6. Invenio 数字图书馆框架
  7. SiamRPN代码讲解,推理测试讲解
  8. 用 Python 实现武科大教务处自动抢课
  9. mivo tv android,MivoTV Live Streaming
  10. 小米手机linux驱动下载,小米手机驱动下载