首页 > 技术文章 > Android 设置进度条背景

huanyi0723 2016-02-04 15:40 原文

Android 设置进度条背景

直接上代码

<ProgressBar
            android:id="@+id/progressBar"
            android:layout_width="match_parent"
            android:layout_height="20dp"
            android:layout_gravity="center_horizontal"
            android:indeterminateOnly="false"
            android:max="100"
            android:progress="10"
            android:progressDrawable="@drawable/my_progress_horizontal" />
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">
        <shape>
            <corners android:radius="0dip" />

            <gradient
                android:angle="0"
                android:centerColor="#E6E6E6"
                android:endColor="#E6E6E6"
                android:startColor="#E6E6E6" />
        </shape>
    </item>
    <item android:id="@android:id/progress">
        <clip>
            <shape>
                <corners android:radius="0dip" />

                <gradient
                    android:angle="0"
                    android:centerColor="#49BCFF"
                    android:endColor="#49BCFF"
                    android:startColor="#49BCFF" />
            </shape>
        </clip>
    </item>

</layer-list>

shape是用来定义形状的,gradient定义该形状里面为渐变色填充,startColor起始颜色,endColor结束颜色,angle表示方向角度。当angle=0时,渐变色是从左向右。 然后逆时针方向转,当angle=90时为从下往上。

android:shape 配置的是图形的形式,主要包括方形、圆形等,上边代码为方形。gradient节点主要配置起点颜色、终点颜色、中间点的坐标、中间点的颜色、渐变角度(90度为上下渐变,0为左右渐变),padding节点主要配置上下左右边距,corners节点配置四周园角的半径

 

推荐阅读