Android-skin-support的缺陷

前言

前几篇文章我们阐述了Android-skin-support的用法以及原理,Android-skin-support功能非常强大,无论是背景、颜色、透明度还是图片都可以换肤,但是Android-skin-support也有它的缺陷,比如字体的大小、控件的位置,字体的内容,以及自定义控件自定义属性都很难根据换肤包切换。(上一篇 Android-skin-support的原理

问题

尤其对于某些自定义的控件的自定义不能切换,比如圆的颜色以及圆的半径都不能根据换肤包切换。

image.png

字体的颜色、字体的内容、字体的坐标都难以通过换肤包切换


image.png

控件的宽高、坐标位置也不能切换


image.png

解决方法

我自己写了一个换肤的控件,可以通过反射获取Apk包中的资源,然后动态赋予相关的控件,最后再invalidate刷新即可。我的这个控件比较麻烦比如Android-skin-support方便,但是配合Android-skin-support一起使用可以解决Android-skin-support解决不了的问题。

下一篇我们就来看看我自己开源的控件CustomSkinChange

你可能感兴趣的:(Android-skin-support的缺陷)