`
woshixushigang
  • 浏览: 581222 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类

Android 控件之ProgressBar进度条

阅读更多

Android 控件之ProgressBar进度条

ProgressBar是Android的进度条。体验效果

 

源码下载

下面详细介绍ProgressBar

一、说明

  在某些操作的进度中的可视指示器,为用户呈现操作的进度,还它有一个次要的进度条,用来显示中间进度,如在流媒体播放的缓冲区的进度。一个进度条也可不确定其进度。在不确定模式下,进度条显示循环动画。这种模式常用于应用程序使用任务的长度是未知的。

二、XML重要属性

    android:progressBarStyle:默认进度条样式

    android:progressBarStyleHorizontal:水平样式

 

三、重要方法

    getMax():返回这个进度条的范围的上限

    getProgress():返回进度

    getSecondaryProgress():返回次要进度

    incrementProgressBy(int diff):指定增加的进度

    isIndeterminate():指示进度条是否在不确定模式下

    setIndeterminate(boolean indeterminate):设置不确定模式下

    setVisibility(int v):设置该进度条是否可视

四、重要事件

    onSizeChanged(int w, int h, int oldw, int oldh):当进度值改变时引发此事件

五、实例

1.布局文件

<?xml version="1.0" encoding="utf-8"?>

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="match_parent"
    android:layout_height="wrap_content">

    <ProgressBar android:id="@+id/progress_horizontal"
        style="?android:attr/progressBarStyleHorizontal"
        android:layout_width="200dip"
        android:layout_height="wrap_content"
        android:max="100"
        android:progress="50"
        android:secondaryProgress="75" />

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="默认进度条" />        

    <LinearLayout
        android:orientation="horizontal"
        android:layout_width="match_parent"
        android:layout_height="wrap_content">

        <Button android:id="@+id/decrease"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="减少" />

        <Button android:id="@+id/increase"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="增加" />

    </LinearLayout>

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="自定义进度条" />        

    <LinearLayout
        android:orientation="horizontal"
        android:layout_width="match_parent"
        android:layout_height="wrap_content">

        <Button android:id="@+id/decrease_secondary"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="第二减少" />

        <Button android:id="@+id/increase_secondary"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="第二增加" />

    </LinearLayout>

</LinearLayout>

  

2.Java代码

package wjq.WidgetDemo;

import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.view.Window;
import android.widget.Button;
import android.widget.ProgressBar;

public class ProgressBarDemo extends Activity {

 /* (non-Javadoc)
  * @see android.app.Activity#onCreate(android.os.Bundle)
  */
 @Override
 protected void onCreate(Bundle savedInstanceState) {
  // TODO Auto-generated method stub
  super.onCreate(savedInstanceState);
  
   requestWindowFeature(Window.FEATURE_PROGRESS);
         setContentView(R.layout.probarpage);
         setProgressBarVisibility(true);
         
         final ProgressBar progressHorizontal = (ProgressBar) findViewById(R.id.progress_horizontal);
         setProgress(progressHorizontal.getProgress() * 100);
         setSecondaryProgress(progressHorizontal.getSecondaryProgress() * 100);
         
         Button button = (Button) findViewById(R.id.increase);
         button.setOnClickListener(new Button.OnClickListener() {
             public void onClick(View v) {
                 progressHorizontal.incrementProgressBy(1);
                 // Title progress is in range 0..10000
                 setProgress(100 * progressHorizontal.getProgress());
             }
         });

         button = (Button) findViewById(R.id.decrease);
         button.setOnClickListener(new Button.OnClickListener() {
             public void onClick(View v) {
                 progressHorizontal.incrementProgressBy(-1);
                 // Title progress is in range 0..10000
                 setProgress(100 * progressHorizontal.getProgress());
             }
         });

         button = (Button) findViewById(R.id.increase_secondary);
         button.setOnClickListener(new Button.OnClickListener() {
             public void onClick(View v) {
                 progressHorizontal.incrementSecondaryProgressBy(1);
                 // Title progress is in range 0..10000
                 setSecondaryProgress(100 * progressHorizontal.getSecondaryProgress());
             }
         });

         button = (Button) findViewById(R.id.decrease_secondary);
         button.setOnClickListener(new Button.OnClickListener() {
             public void onClick(View v) {
                 progressHorizontal.incrementSecondaryProgressBy(-1);
                 // Title progress is in range 0..10000
                 setSecondaryProgress(100 * progressHorizontal.getSecondaryProgress());
             }
         });
         
 }

}

 

<!--end: topics 文章、评论容器-->

<script type="text/javascript"></script>

<script type="text/javascript"></script>
分享到:
评论

相关推荐

    Android 控件之ProgressBar进度条源码-完美控制

    在XML布局文件中,我们可以通过`&lt;ProgressBar&gt;`标签来添加这个控件,并通过`android:indeterminate`属性设置其是否显示不确定模式,即旋转的进度条效果。此外,还可以通过`android:max`设定最大值,`android:...

    Android 控件 ProgressBar进度条源码

    总的来说,理解ProgressBar的源码有助于开发者深入掌握Android UI的构建原理,从而能够更灵活地设计和定制自己的进度条组件。通过分析和实践,开发者可以创造出更加丰富多样的进度展示效果,提升应用的用户体验。

    Android UI控件之ProgressBar进度条

    "Android UI控件之ProgressBar进度条" Android UI控件之ProgressBar进度条是Android应用程序中非常重要的一部分,它可以给用户提供一个清晰的视觉效果,展示用户的操作进度情况。下面将详细介绍Android UI控件之...

    AndroidProgressBar_Android ProgressBar进度条的几乎全部的用法源码集.rar

    本资源"AndroidProgressBar_Android ProgressBar进度条的几乎全部的用法源码集.rar"提供了关于Android ProgressBar的多种实现方式和应用场景的源代码,非常适合开发者学习和参考。 首先,我们来详细探讨一下Android...

    安卓Android源码——(ProgressBar进度条).zip

    这个压缩包“安卓Android源码——(ProgressBar进度条).zip”很可能包含了关于如何自定义和使用ProgressBar的源代码示例。下面我们将详细探讨ProgressBar的相关知识点。 1. **ProgressBar的基本用法** ProgressBar...

    Android自定义控件——圆形进度条

    在Android开发中,自定义控件是提升应用独特性和用户体验的重要手段。本篇文章将深入探讨如何创建一个圆形进度条,即`CircleProgressView`。这个控件能够以圆形的形式展示进度,常见于加载动画或者显示数据百分比的...

    Android进度条控件progressbar使用方法详解

    1)进度条ProgressBar使用方法 1、在layout布局文件中创建ProgressBar控件 &lt;ProgressBar nstyle=?android:attr/progressBarStyleHorizontal android:layout_width match_parent android:layout_height=wrap_content...

    Android 圆形颜色渐变进度条 自定义控件

    在Android开发中,自定义控件是提升应用用户体验和界面美观度的重要手段。本文将深入探讨如何创建一个圆形颜色渐变的进度条自定义控件。这个控件能够以动态的、平滑的方式显示进度,并且颜色随着进度的增加而渐变,...

    Android-CircularProgressView一个可以调节颜色和线条粗细的环形进度条控件

    与Android原生的`ProgressBar`不同,它可以改变环形进度条的颜色,这使得开发者能够更好地匹配应用的主题或者创建更吸引人的视觉效果。通过设置不同的颜色值,你可以实现动态变化的颜色效果,例如渐变色或者根据进度...

    Android 三种常用实现自定义圆形进度条 ProgressBar

    在Android开发中,自定义控件是提升应用用户体验和界面美观度的重要手段。本文将详细介绍如何实现三种常用的方法来创建自定义的圆形进度条(ProgressBar)。这些方法包括使用Shape Drawable、自定义View以及使用第三...

    Android控件之ProgressBar用法实例分析

    本文实例讲述了Android控件之ProgressBar用法。分享给大家供大家参考。具体如下: ProgressBar位于android.widget包下,其继承于View,主要用于显示一些操作的进度。应用程序可以修改其长度表示当前后台操作的完成...

    Android自定义进度条 Progressbar

    在Android开发中,自定义控件是提升应用用户体验和界面美观度的重要手段之一。本教程主要探讨如何创建一个独特的进度条,它由一半的半圆形和另一半的矩形构成,以此来提供一种新颖的视觉反馈。这个自定义的进度条...

    android progressBar自定义 颜色 进度条

    在Android开发中,ProgressBar是用于显示进度的一种控件,它提供了直观的反馈,让用户知道某个操作正在后台执行。本文将详细讲解如何自定义ProgressBar的颜色,以实现更具个性化的效果。 首先,我们来理解一下...

    Android开发使用ProgressBar实现进度条功能示例

    Android开发中,ProgressBar是实现进度条功能的常用控件。ProgressBar控件可以显示当前任务的进度,例如下载文件、安装软件、上传数据等。下面我们将详细介绍Android开发使用ProgressBar实现进度条功能的方法。 一...

    Android自定义半圆进度条

    android自定义半圆进度条,可以自己根据里面备注的参数,调整半圆的长度。这里是使用说明:http://blog.csdn.net/beibaokongming/article/details/79002646

    Android ProgressBar直线进度条的实例代码

    Android ProgressBar直线进度条是Android应用程序中非常常见的一种UI控件,它可以用于展示应用程序的进度信息,如下载进度、上传进度、安装进度等。 Android ProgressBar直线进度条的实例代码中,作者通过实例代码...

    Android 带文字的进度条,文字颜色随进度条的增加而渐变

    在Android开发中,自定义控件是提升应用用户体验和视觉效果的重要手段。在这个特定的案例中,我们关注的是一个带有文字的进度条,其文字颜色会随着进度条的增长而渐变。这种效果可以为用户提供更直观、动态的反馈,...

    ProgressBar实时进度条控件

    "ProgressBar0.2.2.0实时进度条控件"可能是某个第三方库提供的特定版本,专门用于实现更高效或功能更丰富的进度条显示。 在.NET框架下,通常我们使用System.Windows.Forms命名空间下的ProgressBar控件。这个控件...

    Android实现进度条(ProgressBar)的功能与用法

    ProgressBar是Android SDK提供的一种UI控件,用于显示进度,通常用于表示后台任务的执行状态。下面我们将详细介绍如何在Android中实现和使用进度条。 首先,我们来看一下进度条的基本使用。在布局文件(如activity_...

Global site tag (gtag.js) - Google Analytics