其实很多图片不是必须的,用xml的bitmap来创建不同颜色的图
2017-08-04 本文已影响16人
Small_Cake
在Android开发中,我们经常会遇到很多的背景透明,只有线条的图片!如下

同时我们还需要他们被选中或者符合当前级别的图片,于是我们就有灰色的和红色的两张图片,但有的时候美工只提供来灰色的图片,我们自己:一不想麻烦别人,二,自己ps又麻烦,三,不想要那么多同样的图标但只是颜色不同的图片!
- 于是bitmap应运而生:我们可以在drawable文件夹下新建xml文件,里面xml布局使用bitmap
bitmap_red_huiyuan.xml
<?xml version="1.0" encoding="utf-8"?>
<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
android:src="@mipmap/huiyuan"
android:tint="#FC6466">
</bitmap>
从而就把灰色图片转换为来红色的,tint就是填充颜色的意思,改变后如下:

而且这种xml生成的视图肯定比图片体积小很多:

以前一直不知道此小技巧,也算一个减小应用体积的办法吧!
注意:此方法>=API21版本有效,如果是Android5.0以下,需要使用AppCompatTextView或AppCompatImageView来支持了!