• 安卓ProgressBar水平进度条的颜色设置


    安卓系统提供了水平进度条ProgressBar的样式,而我们在实际开发中,差点儿不可能使用默认的样式。原因就是“太丑”^_^

    所以我们在很多其它的时候须要对其颜色进行自己定义,主要使用就是自己定义样式文件。

    再在drawable文件夹下新增progressbar.xml文件,能够设置默认背景色和进度条的颜色

    (值得一提的是支持渐变色)

    代码:

    <layer-list xmlns:android="http://schemas.android.com/apk/res/android" >
    
        <item android:id="@android:id/background">
            <!--形状-->
            <shape>
               <!-- 角球-->
                <corners android:radius="5dip" />
                <!--梯度-->
                <gradient
                    android:angle="0"
                    android:centerColor="#ff5a5d5a"
                    android:centerY="0.75"
                    android:endColor="#ff747674"
                    android:startColor="#ff9d9e9d" />
            </shape>
        </item>
    
        <item android:id="@android:id/secondaryProgress">
            <clip>
                <shape>
                    <corners android:radius="5dip" />
                    <gradient
                        android:angle="0"
                        android:centerColor="#80ffb600"
                        android:centerY="0.75"
                        android:endColor="#a0ffcb00"
                        android:startColor="#80ffd300" />
                </shape>
            </clip>
        </item>
    
        <item android:id="@android:id/progress">
            <clip>
                <shape>
                    <corners android:radius="5dip" />
                    <gradient
                        android:angle="0"
                        android:endColor="#8000ff00"
                        android:startColor="#80ff0000" />
                </shape>
            </clip>
        </item>
    
    </layer-list>

    布局文件定义例如以下:

    <?xml version="1.0" encoding="utf-8"?>
    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:tools="http://schemas.android.com/tools"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:orientation="vertical"
        android:gravity="center"
        tools:context=".ProgressBarActivity">
        <ProgressBar
            android:id="@+id/progressBar"
            style="?android:attr/progressBarStyleHorizontal"
            android:layout_width="fill_parent"
            android:layout_height="7.5dp"
            android:max="100"
            android:progress="80"
            android:layout_marginRight="20dp"
            android:progressDrawable="@drawable/progressbar"
            android:visibility="visible"
            android:layout_marginLeft="20dp" />
    
        <ProgressBar
            android:id="@+id/progressBar2"
            style="?android:attr/progressBarStyleHorizontal"
            android:layout_width="fill_parent"
            android:layout_height="15dp"
            android:max="100"
            android:progress="50"
            android:layout_marginRight="20dp"
            android:progressDrawable="@drawable/progressbar"
            android:visibility="visible"
            android:layout_marginLeft="20dp"
            android:layout_marginTop="20dp"/>
        <ProgressBar
            android:id="@+id/progressBar3"
            style="?android:attr/progressBarStyleHorizontal"
            android:layout_width="fill_parent"
            android:layout_height="15dp"
            android:max="100"
            android:progress="100"
            android:layout_marginRight="20dp"
            android:progressDrawable="@drawable/progressbar"
            android:visibility="visible"
            android:layout_marginLeft="20dp"
            android:layout_marginTop="20dp"/>
    
        <ProgressBar
            android:id="@+id/progressBar4"
            style="?android:attr/progressBarStyleHorizontal"
            android:layout_width="fill_parent"
            android:layout_height="20dp"
            android:max="100"
            android:progress="100"
            android:layout_marginRight="20dp"
            android:progressDrawable="@drawable/progressbar"
            android:visibility="visible"
            android:layout_marginLeft="20dp"
            android:layout_marginTop="20dp"/>
    
    
    
    </LinearLayout>
    

      ------------结束-------------

    <?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="5dip" />
                <gradient android:startColor="#fff"
                    android:endColor="#fff" />
            </shape>
        </item>
    
        <!--  设置进度条颜色(白色)  -->
        <item  android:id="@android:id/progress" >
            <clip>
                <shape>
                    <corners android:radius="5dip" />
                    <gradient  android:startColor="#ffca12"
                        android:endColor="#ffca12" />
                </shape>
            </clip>
        </item>
    
    </layer-list>
    

      

  • 相关阅读:
    mariadb配置双主多从
    mq系列rabbitmq-02集群+高可用配置
    mq系列rabbitmq-01简介,安装,api操作
    持续集成框架jenkins介绍02-持久集成git仓库+maven项目
    git仓库相关知识03-搭建远程仓库服务器
    RecyclerView瀑布流优化方案探讨
    Android实际开发bug大总结
    Android打造万能自定义阴影控件
    PagerAdapter深度解析和实践优化
    Java博客大汇总
  • 原文地址:https://www.cnblogs.com/changyiqiang/p/11398250.html
Copyright © 2020-2023  润新知