Android开发如何白嫖适配各种屏幕的图标?

Posted 宾有为

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Android开发如何白嫖适配各种屏幕的图标?相关的知识,希望对你有一定的参考价值。

你有没有想过,如果你掌握了白嫖图标的方法,你和美工小姐姐不谈工作,只谈感情的时间会多出多少?

Image Asset

选择app及其以下任一目录→选择newImage Asset,会弹出类似这样的一个窗口

在这里插入图片描述
Icon Type可选类型有:

  • Launcher Icons(Adaptive and Legacy)
  • Launcher Icons(Legacy only)
  • Action Bar and Tab Icons
  • Notification Icons
  • TV Banners
  • TV Channel Icons

搁这的有六种类型,每一种都有着不一样的作用,博主只讲解相对来说用的比较多的Action Bar and Tab Icons

Icon Type选择Action Bar and Tab IconsAsset TypeImageClip ArtText三种类型可选。

  • Image:需要一个本地图片路径的,与白嫖相违背,咱不鸟它。

  • Clip Art:可以选android自带的一些图标,这样的一个页面有36个图标,一共有31页左右,那么它的图标总数就是36x31=1116个左右图标,没错,是1116个左右,是不是有点多?别急,我们还没讲完
    在这里插入图片描述Select Icon窗口下面有一行字,These icons are available under the Apache License Version 2.0(这些图标可在Apache License 2.0版本下使用)
    在这里插入图片描述Apache License 2.0是一个协议,来自Apache基金会,关于这个协议想了解更多的小伙伴可点击 五种开源协议 查看。
    在这里插入图片描述Android官方也有加入这个协议,所以这些图标大家大可放心使用。

  • Text:如果想要字体图标,那就选Text吧。选择Text需要注意的是字体样式,某些字体样式不支持中文,中文会乱码,如图:在这里插入图片描述
    我就想要中文效果,咋办?那咱换一个样式呗。将样式滑动到最下方,就会有中文的样式可选,选择这些中文就不会乱码啦。

在这里插入图片描述

TrimPadding如果需求对图标不严格的话,不用动,默认的也行。

Theme:设置图标颜色。如果想要一个图标含有多种颜色,在生成文件后多加几个path标签,删除掉tint属性,tint属性会覆盖path标签fillColor,如果不删fillColor便形同虚设。

点击Next就可以看到点击Finish后在各个目录生成的文件

在这里插入图片描述
点击Finish,图标就会在展示出来的那几个文件夹创建一个同名的文件,如果创建的图标颜色不是你想要的,你可以打开drawable-anydpi目录下的对应文件对它进行适当修改,修改颜色需要修改tintalphatint设置的颜色是16进制。alpha的值是0 → 1,用于设置图标透明度。
在这里插入图片描述

如果那1116个图标中没有我想要的图标怎么办?

那你可得在pathData的参数使用贝塞尔曲线的知识对它进行绘制咯。

在这里插入图片描述

Vector Asset

创建Vector Asset
在这里插入图片描述
Vector Asset创建可选择本地的SVG、PSD的文件格式,Clip Art的资源与Image Asset资源一致,可自己设置图标的大小与透明度。

在这里插入图片描述
点击下一步后,不同于Image AssetVector Asset只会在drawable生成一个xml文件,生成文件的地方不同,但生成的xml文件里面的内容与Image Asset的基本一致。

在这里插入图片描述

.9.png(拉伸图片不会失帧的图片格式)

制作一张.9.png图片需要提前准备好一张png图片,并将其引入项目。选中png图片点击鼠标右键即可看见Create 9-Patch file

在这里插入图片描述
点击会生成一张同名的.9.png图片,生成.9.png的图片应该把同一目录同名称的.png图片资源删除,以免编译出现资源重复的问题。

在这里插入图片描述

打开图片,便是会展现这样的个画面,在这个界面可以通过拉拽图片的边距调整页面的拉伸范围。

在这里插入图片描述
在布局上引用.9.pngpng的图片作为背景图片并设置layout_widthmatch_parentlayout_height400dp时就会发现,同样大小的一张图片不同的后缀名清晰度却有很大的区别。回想起来,社交软件的聊天气泡也许用的就是.9.png图片,以此达到图片宽高延伸却不会失帧的效果。
在这里插入图片描述

参考文献:
1、Android studio软件生成.9.png格式图片

以上是关于Android开发如何白嫖适配各种屏幕的图标?的主要内容,如果未能解决你的问题,请参考以下文章

Android屏幕适配

Android屏幕适配方案

Android高手笔记-屏幕适配 & UI优化

Android 屏幕适配方案(百分比)

Android 屏幕适配(修改系统字体大小显示大小修改分辨率相关适配)

Android平板上开发应用的一点心得——精确适配不同的dpi和屏幕尺寸