4.x , 5.x , 6.x
市面上的手机基本分为这3种了;
对于4.x来说,5.x,6.x的效果有很多效果都是4.x用不了的,
这时候,我们需要做Style(样式兼容了)
在我们res目录下新建
values----------------默认样式
values-v14----------4.x手机的样式
values-v21----------5.x手机的样式
6.x就不写了,同理;
有兴趣的童鞋可以做一个测试
建values,values-v14,values-v21的文件夹
每个文件夹下面都放一个styles文件,给每个style写一个同样的样式:
每个styles使用不同的颜色;
<style name="AppButtonBG">
<item name="android:background">@color/blue</item>
</style>
我在这里直接说结果:
1.如果在4.x的手机上,app会默认去取values-v14的样式,如果没有找到,就会去默认的样式里面找;
2. 如果在5.x的手机上,app会默认去取values-v21的样式,如果没有找到,
就会去values-v14的style里面找,如果values-v14里面也没有,就会去values(默认的)里面去找;
通过这两点可以看出,安卓使用样式的机制,是向下使用的;
通过测试可以知道,我们要做样式兼容的话,要考虑到安卓向下兼容的模式;
这样的话,我们的每个styles文件里面就不用写很多样式了,只写几个在不同版本适配的就行了;
一般的,放在默认的styles里面就行了;
网友评论