保姆级学习开发安卓手机软件(二十三)–更改自适应应用图标
我们也可以称之为启动图标,如下,我们之前实现的应用app都用的自带的“绿色”图标:
如果我们使用过不同的 Android 设备或者主题,就可能会注意到,启动图标可能因设备制造商而异(可能会以方形、圆角方形或方圆形,目的都是为了使单个设备上的所有应用图标具有统一的形状,以便提供一致的用户视觉体验)。
因而,Android 平台引入了对自适应图标的支持(自 Android 8.0 版本 :API 级别 26 起)。
为应用实现自适应图标后,我们能够为设备的显示屏量身定制启动图标,从而适应各种设备(为适应不同屏幕密度的设备,需要提供不同版本的应用图标)。
使用 Android Studio 中名为 Image Asset Studio 的工具可以生成各种版本的启动器图标,下面,就让我们一起来学习。
我们配置好所有型号后,安装到不同安卓手机就会自动适配最合适的密度图片,然后进行缩放,展现最佳效果。
使用了<adaptive-icon>元素为应用图标的<background>背景图层和<foreground>前景图层分别提供资源可绘制对象,从而完成对它们的声明。
这两个都是矢量可绘制对象文件。它们没有以像素为单位的固定尺寸。如果切换到 Code 视图,就会看到使用<vector>元素声明矢量可绘制对象的 XML 代码。
这里提一嘴,图片有两种格式,矢量可绘制对象文件和位图。矢量图形可针对任意屏幕密度的任意画布尺寸进行缩放,而不会损害图片质量,因而是理想之选,但是如果我们使用的是照片,很难用一系列的形状来描述,在这种情况下,使用位图资源会更加有效。
Safe delete (with usage search) 功能会通过搜索代码来找出要删除的资源的使用情况。
然后我们先下载两个矢量图标 XML吧(大家先用这个效果图文件,最后讲解怎么自己选择其他图标效果Desktop.zip)。
要确认所有生成的资源均正确显示,就可以点击完成(finish)。
至此,更改应用图标就完成了,你可以运行软件,查看效果:
那最后再解释一下,为什么xml文件存在后还需要生成不同的位图,搭载 Android 8.0 或更高版本(API 26 及更高版本)的设备上,系统可以使用自适应图标,在搭载 Android 8.0 以下的任意版本(但高于您的应用所需的最低 API 级别)的设备上,系统将使用旧版启动器图标(位于不同密度级别的 mipmap 文件夹中的位图图片)。
其实之前导入xml的路径下可以直接选图片,注意下就成。