【Android进度条】三种方式实现自定义圆形进度条ProgressBar

原创 2012年03月29日 22:02:57


一、通过动画实现

定义res/anim/loading.xml如下:
<?xml version="1.0" encoding="UTF-8"?>
<animation-list android:oneshot="false"
xmlns:android="http://schemas.android.com/apk/res/android">
  <item android:duration="150" android:drawable="@drawable/loading_01" />
  <item android:duration="150" android:drawable="@drawable/loading_02" />
  <item android:duration="150" android:drawable="@drawable/loading_03" />
  <item android:duration="150" android:drawable="@drawable/loading_04" />
  <item android:duration="150" android:drawable="@drawable/loading_05" />
  <item android:duration="150" android:drawable="@drawable/loading_06" />
  <item android:duration="150" android:drawable="@drawable/loading_07" />
</animation-list> 


二、通过自定义颜色实现

定义res/drawable/progress_small.xml如下:

<?xml version="1.0" encoding="utf-8"?>
<rotate xmlns:android="http://schemas.android.com/apk/res/android"
    android:fromDegrees="0"
    android:pivotX="50%"
    android:pivotY="50%"
    android:toDegrees="360" >
    <shape
        android:innerRadiusRatio="3"
        android:shape="ring"
        android:thicknessRatio="8"
        android:useLevel="false" >
        <gradient
            android:centerColor="#FFFFFF"
            android:centerY="0.50"
            android:endColor="#1E90FF"
            android:startColor="#000000"
            android:type="sweep"
            android:useLevel="false" />
    </shape>
</rotate>

三、使用一张图片进行自定义
定义res/drawable/progress_small.xml如下:

<rotate xmlns:android="http://schemas.android.com/apk/res/android"
    android:drawable="@drawable/spinner_black_16"
    android:pivotX="50%"
    android:pivotY="50%"
    android:fromDegrees="0"
    android:toDegrees="360" />


使用方法都一样, 如下:

    <ProgressBar
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:indeterminateDrawable="@drawable/progress_small"/>


也可以根据需要通过设置style来设置其大小! 一般只有使用默认的ProgrressBar的时候采用。对于上述三种自定义的方式,建议修改直接修改图片大小,或者shape;

    <ProgressBar
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerInParent="true"
        style="?android:attr/progressBarStyleSmall"
        android:indeterminateDrawable="@drawable/progress_small"/>

设置成progressBarStyleSmall后,图标变小。 

设置成progressBarStyleLarge后,图标变大

   


参考: http://www.eoeandroid.com/forum.php?mod=viewthread&tid=76872

版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

自定义圆形progressbar颜色

先在drawable中创建一个xml文件,这里命名为circle_progressbar_style.xml   <rotate xmlns:android="http://schemas...

Android自定义控件实现圆形进度CircleProgressBar

近日有朋友问我有没有如下图效果的开源控件,相信大家无论是用IOS还是Android,都对这种效果不陌生,很多主流APP都会有这样或类似的效果,之前也打算研究一下这类控件的代码,苦于一直不知道应该怎么搜...

自定义圆形progressbar(包含进度动画效果)

效果图敬上:)attrs文件: < attr name=”circleProgressColor”

ProgressBar(进度条)-自定义圆形进度条

相信你看完2会吐槽,卧槽,这么坑爹,拿个动画来坑人,哈哈,实际开发中都这样,当然上述这种情况只适用于不用显示进度的场合,如果要显示进度的场合就没用处了,好吧,接下来看下网上一个简单的自定义圆形进度条!...

自定义控件:圆形进度条的实现

前言圆形进度条是很常见的自定义组件,相信大家都看到过,它的实现方式很简单,效果很绚丽,而且代码具有典型性,是学习自定义控件中不可多得的素材。效果由于录制 GIF 小工具的采样频率较低,以上效果图有卡顿...

自定义ProgressBar实现圆弧进度条

依赖 dependencies {   compile 'com.czp.arcProgressBar:ArcProgressBar:1.0.1' } nameformatdescriptionb...

Android简单自定义圆形和水平ProgressBar

ProgressBar

ProgressBar(进度条)-使用动画来替代圆形进度条

第一个方案是,使用一套连续图片,形成一个帧动画,当需要进度图的时候,让动画可见,不需要的时候让动画不可见即可!而这个动画,一般是使用AnimationDrawable来实现的!好的,我们来定义一个An...

Android笔记: ProgressBar 圆形进度条颜色的设置

你是不是还在为设置进度条的颜色而烦恼呢……别着急,且看如下如何解决。ProgressBar分圆形进度条和水平进度条我这里就分享下如何设置圆形进度条的颜色吧,希望对大家会有帮助。源码如下: <anima...

Android ProgressBar 详解 改变 ProgressBar 颜色

今天来说说 ProgressBar   这个东西, 之前一种是用的 项目里面 别人写好的直接用, 还没怎么细看这两个东西 ProgressBar 很简单就一进度条 默认情况下, 他是圆形的,  但...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)