定制progrebar,这里以progrebar(small)为例,使之在2.x系统里显示holo风格。
1)找到系统文件styles.xml 和themes.xml。
在目录adt-bundle\sdk\platforms\android-19\data\res\values下找到styles.xml和 themes.xml,用Uedit打开;
2) 在系统的styles.xml中搜索控件名称progrebar,找到
“ <style name="Widget.Holo.ProgressBar.Small" parent="Widget.ProgressBar.Small">
<item name="android:indeterminateDrawable">@android:drawable/progress_small_holo</item>
</style>”,其中@android:drawable/progress_small_holo是属性;
3) 复制progress_small_holo,在adt-bundle\sdk\platforms\android-19\data\res\values\drawable文件夹下搜“progress_small_holo”,
找到对应的xml文件,拷贝到我们自己的项目的res下的drawable文件夹下(这个文件夹要自己建)
注意:如果属性值为?开头,则使用后面字符串在先在themes.xml中搜索,重复步骤3.
xml文件内容如下:
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item>
<rotate
android:drawable="@drawable/spinner_16_outer_holo"
android:pivotX="50%"
android:pivotY="50%"
android:fromDegrees="0"
android:toDegrees="1080" />
</item>
<item>
<rotate
android:drawable="@drawable/spinner_16_inner_holo"
android:pivotX="50%"
android:pivotY="50%"
android:fromDegrees="720"
android:toDegrees="0" />
</item>
</layer-list>
4) 修改错误。因为拷贝的progress_small_holo中有张图片spinner_16_outer_holo,需要拷贝到自己的项目中。
adt-bundle-windows-x86-20130917\sdk\platforms\android-18\data\res\drawable-hdpi中搜索图片名称spinner_16_outer_holo,
并将其拷贝到自己的项目中的drawable-hdpi文件夹下;
4) 修改控件属性。拉一个 progrebar(small)控件,设置为在2.x系统下预览 ,在属性中加入
android:indeterminateDrawable="@drawable/progress_small_holo"。
定制progrebar-如何让控件在2.x系统里显示holo风格(4.x系统下的控件风格),布布扣,bubuko.com
定制progrebar-如何让控件在2.x系统里显示holo风格(4.x系统下的控件风格)
原文地址:http://9105034.blog.51cto.com/9095034/1438235