美文网首页高级UI
自定义进度条之样式篇

自定义进度条之样式篇

作者: 冬絮 | 来源:发表于2018-05-18 11:00 被阅读203次

自定义进度条基础篇之样式表

  1. 样式(style)

       <ProgressBar
       style="@style/Widget.AppCompat.ProgressBar"
       android:layout_width="match_parent"
       android:layout_height="wrap_content"
       android:max="100"/>
    

1.1 系统是默认样式有
style="@style/Widget.AppCompat.ProgressBar"圆形进度条
style="@style/Widget.AppCompat.ProgressBar.Horizontal"水平进度条

系统自带样式的进度条.jpg
  • 一般圆形的适用于没有具体进度,需要用户等待的场景。
  • 而条形的适用于有具体进度的情况,比如加载中,下载进度的提示。

1.2 自定义样式
一般我们不会使用系统自带的样式,比如进度的颜色,进度条的高度,等等简单的修改。这时候我们只需要改动一下样式,就可以达到目的。
在res/values/styles里边新建

 <style name="update_progress_horizontal" parent="Widget.AppCompat.ProgressBar.Horizontal">
    <item name="android:indeterminateOnly">false</item>
    <!--进度条的进度颜色drawable文件-->
    <item name="android:progressDrawable">@drawable/progress_indeterminate_horizontal</item>
    <!--进度条的最小高度-->
    <item name="android:minHeight">17dp</item>
    <!--进度条的最大高度-->
    <item name="android:maxHeight">17dp</item>
</style>

然后再ProgressBar中引用我们自定义的样式就可以了。

  <ProgressBar
  style="@style/update_progress_horizontal"
   android:layout_width="match_parent"
   android:layout_height="wrap_content"
   android:max="100"/>

update_progress_horizontal其中的android:progressDrawable我们可以自己定义进度条的颜色。在res/drawable下新建progress_indeterminate_horizontal文件(layer-list类型的)

<?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="15dip" />
        <!--未加载的进度区域颜色-->
        <solid android:color="#FFDBDBDB"/>
    </shape>
</item>
<!--缓冲的进度的颜色,一般视频播放的缓冲区域-->
<item android:id="@android:id/secondaryProgress">
    <clip>
        <shape>
            <!--进度条的圆角-->
            <corners android:radius="15dip" />
            <!--缓冲的进度的颜色,一般视频播放的缓冲进度-->
            <solid android:color="#80C07AB8"/>
        </shape>
    </clip>
</item>
<!--已经加载完的进度的区域-->
<item android:id="@android:id/progress">
    <clip>
        <shape>
            <!--进度条的圆角-->
            <corners android:radius="15dip" />
            <!--已经加载完的进度的颜色-->
            <solid android:color="#FF706EB3"/>
        </shape>
    </clip>
</item>
</layer-list>
自定义样式的进度条.png

相关文章

  • 自定义进度条之样式篇

    自定义进度条基础篇之样式表 样式(style) 1.1 系统是默认样式有style="@style/Widget....

  • ProgressBar

    普通进度条 样式 圆形和水平【默认圆形】 自定义水平进度条 在这个Style中,有一个progressDrawab...

  • android ProgressBar

    概述 progressBar,进度条,可以设置自定义的样式,其派生出很多控件,如SeekBar,RatingBar...

  • android 自定义view seekbar

    双向选择;支持气泡功能,气泡文字,背景样式可以自定义;进度条按钮,颜色,宽度在xml中设置; 「GitHub地址」...

  • Android-自定义进度条

    ProgressBar 参考文章:Android 高手进阶之自定义View,自定义属性(带进度的圆形进度条)and...

  • Android 圆形进度条

    效果 国际惯例,效果奉上 前言 上一篇写出了横向的进度条,这个自定义View是继承自上一个自定义横向进度条,如果没...

  • ShapeDrawable,Style,AlertDialog

    ShapeDrawable 用来自定义一些样式,如按钮点击按下,CheckBox的选择,进度条的背景和进度等。 S...

  • 设置进度条的样式

    1.首先是水平进度条 2.分别设置进度条的第一、第二进度条的样式和进度条背景的样式。新建一个文件progressb...

  • Android自定义控件之圆形进度条

    Android自定义控件之-圆形进度条 先上图: 贴代码不废话: ** CircleProgressBar.jav...

  • 自定义SeekBar,实现带刻度的进度条实现颜色渐变效果

    自定义SeekBar, 进度变化由可视化气泡样式呈现,定制化程度较高 实现带刻度的进度条实现颜色渐变效果 源码下载...

网友评论

    本文标题:自定义进度条之样式篇

    本文链接:https://www.haomeiwen.com/subject/kcepdftx.html