Android自定义view实现进度条指示效果

所属分类: 软件编程 / Android 阅读数: 32
收藏 0 赞 0 分享

先看看效果图:

首先是布局文件

<FrameLayout
 android:layout_width="match_parent"
 android:layout_marginLeft="10dp"
 android:layout_marginRight="10dp"
 android:layout_height="wrap_content">

 <ProgressBar
  android:id="@+id/pb_process"
  style="@style/ProgressStyle"
  android:layout_width="match_parent"
  android:layout_height="wrap_content"
  android:indeterminate="false" />

 <TextView
  android:id="@+id/tv_progress"
  android:layout_width="wrap_content"
  android:layout_height="wrap_content"
  android:layout_gravity="center"
  android:textColor="@color/white"/>

</FrameLayout>

添加style-ProgressStyle

<style name="TrainProgressStyle" parent="@android:style/Widget.ProgressBar.Horizontal">
 <item name="android:progressDrawable">@drawable/my_progress</item>
</style>

添加drawable-my_progress

<?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:angle="270"

    android:centerY="0.75"
    android:endColor="@color/gray_BB"
    android:startColor="@color/gray_BB" />
  </shape>
 </item>

 <item android:id="@android:id/secondaryProgress">
  <clip>
   <shape>
    <corners android:radius="5dip" />
    <gradient
     android:angle="270"
     android:centerColor="#f69200"
     android:centerY="0.75"
     android:endColor="#ff9800"
     android:startColor="#ff9800" />
   </shape>
  </clip>
 </item>

 <item android:id="@android:id/progress">
  <level-list>
   <!-- 进度满时 level = 10000-->
   <item
    android:maxLevel="10000"
    android:minLevel="10000">
    <clip>
     <shape>
      <corners android:radius="5dip" />
      <gradient
       android:angle="270"
       android:centerColor="#21a837"
       android:centerY="0.75"
       android:endColor="#22ac38"
       android:startColor="#22ac38" />
     </shape>
    </clip>
   </item>
   <!-- 进度未满时 level < 10000-->
   <item
    android:minLevel="0"
    android:maxLevel="9999"
    >
    <clip>
     <shape>
      <corners android:radius="5dip" />
      <gradient
       android:angle="270"
       android:centerColor="#f69200"
       android:centerY="0.75"
       android:endColor="#ff9800"
       android:startColor="#ff9800" />
     </shape>
    </clip>
   </item>
  </level-list>
 </item>

</layer-list>

activity里的使用和安卓默认的一样

pb_progress.setMax();
pb_progress.setProgress();

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

更多精彩内容其他人还在看

android byte[] 和short[]转换的方法代码

这篇文章主要介绍了android byte[] 和short[]转换的方法代码,有需要的朋友可以参考一下
收藏 0 赞 0 分享

Android获取应用程序大小的方法

这篇文章主要介绍了Android获取应用程序大小的方法,有需要的朋友可以参考一下
收藏 0 赞 0 分享

Android获取其他包的Context实例代码

这篇文章主要介绍了Android获取其他包的Context实例代码,有需要的朋友可以参考一下
收藏 0 赞 0 分享

Android放大镜的实现代码

这篇文章主要介绍了Android放大镜的实现代码,有需要的朋友可以参考一下
收藏 0 赞 0 分享

Android 读取Properties配置文件的小例子

这篇文章主要介绍了Android 读取Properties配置文件的小例子,有需要的朋友可以参考一下
收藏 0 赞 0 分享

Android通讯录开发之删除功能的实现方法

这篇文章主要介绍了Android通讯录开发之删除功能的实现方法,有需要的朋友可以参考一下
收藏 0 赞 0 分享

使用ViewPager实现android软件使用向导功能实现步骤

现在的大部分android软件,都是使用说明,就是第一次使用该软件时,会出现向导,可以左右滑动,然后就进入应用的主界面了,下面我们就实现这个功能
收藏 0 赞 0 分享

android在异步任务中关闭Cursor的代码方法

android在异步任务中如何关闭Cursor?在我们开发应用的时候,很多时候会遇到这种问题,下面我们就看看代码如何实现
收藏 0 赞 0 分享

Android自定义桌面功能代码实现

android自定义桌面其实很简单,看一个例子就明白了
收藏 0 赞 0 分享

android将图片转换存到数据库再从数据库读取转换成图片实现代码

有时候我们想把图片存入到数据库中,尽管这不是一种明智的选择,但有时候还是不得以会用到,下面说说将图片转换成byte[]数组存入到数据库中去,并从数据库中取出来转换成图像显示出来
收藏 0 赞 0 分享
查看更多