用ProgressBar自定义进度条

今天做了一个版本更新的页面,涉及到下载进度条。原生的样式,你懂得,对于注重用户体验的我们来说根本就是丑拒有木有。好了废话不多说,直接上代码:

1、在drawable文件夹下新建progressbar.xml

<?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="@dimen/dp_8"/>
            <solid android:color="#f1f1f1"/>
        </shape>
    </item>

    <item android:id="@android:id/progress">
        <clip>
            <shape>
                <corners android:radius="@dimen/dp_8"/>
                <solid android:color="#374886" />
            </shape>
        </clip>
    </item>
</layer-list>

<corners>标签标示圆角,solid表示填充色,填充色可以自定义。

2、在layout布局文件中添加控件。

<ProgressBar
    android:id="@+id/progressbar"
    style="?android:attr/progressBarStyleHorizontal"
    android:layout_width="@dimen/dp_800"
    android:layout_height="wrap_content"
    android:layout_above="@id/percent"
    android:layout_centerHorizontal="true"
    android:layout_marginBottom="@dimen/dp_57"
    android:max="100"
    android:maxHeight="@dimen/dp_12"
    android:minHeight="@dimen/dp_12"
    android:progressDrawable="@drawable/progressbar" />

重点是 style="?android:attr/progressBarStyleHorizontal" 一定要设置成水平样式,否则会使用默认的转圈样式。

然后将定义的progressbar样式加入进来  android:progressDrawable="@drawable/progressbar"。

猜你喜欢

转载自blog.csdn.net/u014330846/article/details/79728427
今日推荐