修改系统自带控件布局的方法

修改水平进度条布局为例:

系统自带控件的样式都定义在sdk/platforms/android-16/data/res/values目录下的styles.xml文件中。打开styles.xml文件,搜索progressbar,找到要修改布局的样式

修改系统自带控件布局的方法_第1张图片

indeterminate模糊的,不确定的。

indeterminateOnly:是否没有具体的进度,true是没有,false是有具体进度。

indeterminateDrawable:模糊的进度条,进度条有两个进度,一个是具体的进度,一个是缓冲的进度。


用Everything搜索系统引用的progress_horizontal.xml文件。文件中的列表里面3个item分别是:进度条布局,缓冲的进度条,具体的进度条。


要想修改布局,就要progress_horizontal.xml文件复制到自己工程的res/drawable目录下,然后再修改如:

<?xml version="1.0" encoding="utf-8"?>

<layer-list xmlns:android="http://schemas.android.com/apk/res/android" >

    <item
        android:id="@android:id/background"
        android:drawable="@drawable/progress_bg">
    </item>
    <item
        android:id="@android:id/secondaryProgress"
        android:drawable="@drawable/progress">
    </item>
    <item
        android:id="@android:id/progress"
        android:drawable="@drawable/progress">
    </item>

</layer-list>
上面代码中的progress_bg和progress是自己要修改后的进度条的背景图片和进度的图片。


然后在自己工程中的res/values/styles.xml文件中,写一个样式继承系统自带的样式,重写里面自己修改的部分:



最后,在自己工程中用到该修改后的控件时,调用自己定义的样式即可:

修改系统自带控件布局的方法_第2张图片


你可能感兴趣的:(修改系统自带控件布局的方法)