定制progrebar-如何让控件在2.x系统里显示holo风格(4.x系统下的控件风格)


定制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"。


你可能感兴趣的:(定制,Small,progrebar)