自定义进度条学习

之前一直用到进度条的学习 ,习惯百度 但是时间一长,再次写发现和没有写过一样,所以在今天再次写的时候,留下一点痕迹

网上写的自定义进度条很多  但是呢看别人的真的是不如自己理解的


自定义进度条的样式  写在drawable下

<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android" >


    <!-- 进度条整体是由三部分组成 -->
    <!-- 第一部分是包含进度的外形 ,corners定义的是圆角 -->
    <item android:id="@android:id/background">
        <shape>
            <corners android:radius="22dip" />
            <solid android:color="#5B3301" />
            <stroke
                android:width="3dp"
                android:color="#FED333" />
        </shape>
    </item>
    <!-- 第二部分,第一次进度  也就是所谓的缓冲进度 这里没有可以不写 -->
    
    <!-- 第三部分 实际进度 也需要定义形状否则就是方块   默认情况下这三部分大小是一样的,可以通过item里面的属性做间距(距离外边的间距)  -->
    <item
        android:id="@android:id/progress"
        android:bottom="5dp"
        android:left="5dp"
        android:right="5dp"
        android:top="5dp">
        <clip>
            <shape>
                <corners android:radius="16dip" />
                <solid android:color="#FED333" />
            </shape>
        </clip>
    </item>


</layer-list>


这就写完了进度条的样式


 <ProgressBar
        style="?android:attr/progressBarStyleHorizontal"
        android:layout_width="155dp"
        android:layout_height="44dp"
        android:max="100"
        android:progress="80"
        android:progressDrawable="@drawable/process_bar" />


这样就完成了进度条的简单自定义,最终要的是明白上面layer-list里面三部分分别是干什么的这样就可以根据需要自己写了

猜你喜欢

转载自blog.csdn.net/rfgreeee/article/details/53692778