Android ProgressDialog 进度条

package com.yarin.android.TestOnPDialog;

import android.app.Activity;
import android.app.ProgressDialog;
import android.content.DialogInterface;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;

public class PDialog extends Activity
{
    privateButton mButton01,mButton02;

    int m_count= 0;
   //声明进度条对话框
   ProgressDialog m_pDialog;

   @Override
    public voidonCreate(Bundle savedInstanceState)
    {
       super.onCreate(savedInstanceState);
       setContentView(R.layout.main);

       //得到按钮对象
       mButton01 = (Button)findViewById(R.id.Button01);
       mButton02 = (Button)findViewById(R.id.Button02);

       //设置mButton01的事件监听
       mButton01.setOnClickListener(new Button.OnClickListener() {
           @Override
           public void onClick(View v)
           {
               // TODO Auto-generated method stub

               //创建ProgressDialog对象
               m_pDialog = new ProgressDialog(PDialog.this);

               // 设置进度条风格,风格为圆形,旋转的
               m_pDialog.setProgressStyle(ProgressDialog.STYLE_SPINNER);

               // 设置ProgressDialog 标题
               m_pDialog.setTitle("提示");

               // 设置ProgressDialog 提示信息
               m_pDialog.setMessage("这是一个圆形进度条对话框");

               // 设置ProgressDialog 标题图标
               m_pDialog.setIcon(R.drawable.img1);

               // 设置ProgressDialog 的进度条是否不明确
               m_pDialog.setIndeterminate(false);

               // 设置ProgressDialog 是否可以按退回按键取消
               m_pDialog.setCancelable(true);

               // 设置ProgressDialog 的一个Button
               m_pDialog.setButton("确定", new DialogInterface.OnClickListener(){
                   public void onClick(DialogInterface dialog, int i)
                   {
                       //点击“确定按钮”取消对话框
                       dialog.cancel();
                   }
               });

               // 让ProgressDialog显示
               m_pDialog.show();
           }
       });

     //设置mButton02的事件监听
       mButton02.setOnClickListener(new Button.OnClickListener() {
           @Override
           public void onClick(View v)
           {
               // TODO Auto-generated method stub

               m_count = 0;

               // 创建ProgressDialog对象
               m_pDialog = new ProgressDialog(PDialog.this);

               // 设置进度条风格,风格为长形
               m_pDialog.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL);

               // 设置ProgressDialog 标题
               m_pDialog.setTitle("提示");

               // 设置ProgressDialog 提示信息
               m_pDialog.setMessage("这是一个长形对话框进度条");

               // 设置ProgressDialog 标题图标
               m_pDialog.setIcon(R.drawable.img2);

               // 设置ProgressDialog 进度条进度
               m_pDialog.setProgress(100);

               // 设置ProgressDialog 的进度条是否不明确
               m_pDialog.setIndeterminate(false);

               // 设置ProgressDialog 是否可以按退回按键取消
               m_pDialog.setCancelable(true);

               // 让ProgressDialog显示
               m_pDialog.show();

               new Thread()
               {
                   public void run()
                   {
                       try
                       {
                           while (m_count <= 100)
                           {
                               // 由线程来控制进度。
                               m_pDialog.setProgress(m_count++);
                               Thread.sleep(100);
                           }
                           m_pDialog.cancel();
                       }
                       catch (InterruptedException e)
                       {
                           m_pDialog.cancel();
                       }
                   }
               }.start();

           }
       });
    }
}
时间: 2024-09-03 15:55:33

Android ProgressDialog 进度条的相关文章

Android ProgressDialog进度条使用详解_Android

进度条以一种客观化的方式,让我们知道程序正在执行的情况,在程序需要时间执行任务的时候,提示进度条友好的告诉用户说,当前任务还没有完成,请稍稍等待,进度条经常使用在APP下载应用.更新应用.加载网络数据中,使用频繁,常见的进度条有ProgressDialog.ProgressBar,这里只要介绍ProgressDialog. ProgressDialog读取文件进度解析主要涉及到一个知识: Handler消息处理机制, 文件字节流的操作, ProgressDialog类的使用 1.Handler消

Android ProgressDialog进度条使用详解

进度条以一种客观化的方式,让我们知道程序正在执行的情况,在程序需要时间执行任务的时候,提示进度条友好的告诉用户说,当前任务还没有完成,请稍稍等待,进度条经常使用在APP下载应用.更新应用.加载网络数据中,使用频繁,常见的进度条有ProgressDialog.ProgressBar,这里只要介绍ProgressDialog. ProgressDialog读取文件进度解析主要涉及到一个知识: Handler消息处理机制, 文件字节流的操作, ProgressDialog类的使用 1.Handler消

Android 自定义ProgressDialog进度条对话框用法详解_Android

ProgressDialog的基本用法 ProgressDialog为进度对话框.android手机自带的对话框显得比较单一,我们可以通过ProgressDialog来自己定义对话框中将要显示出什么东西. 首先看看progressDialog里面的方法 setProgressStyle:设置进度条风格,风格为圆形,旋转的. setTitlt:设置标题 setMessage:设置提示信息: setIcon:设置标题图标: setIndeterminate:设置ProgressDialog 的进度条

实例详解Android自定义ProgressDialog进度条对话框的实现_Android

Android SDK已经提供有进度条组件ProgressDialog组件,但用的时候我们会发现可能风格与我们应用的整体风格不太搭配,而且ProgressDialog的可定制行也不太强,这时就需要我们自定义实现一个ProgressDialog. 通过看源码我们发现,ProgressDialog继承自Alertdialog,有一个ProgressBar和两个TextView组成的,通过对ProgressDialog的源码进行改进就可以实现一个自定义的ProgressDialog. 1.效果: 首先

Android 自定义ProgressDialog进度条对话框用法详解

ProgressDialog的基本用法 ProgressDialog为进度对话框.android手机自带的对话框显得比较单一,我们可以通过ProgressDialog来自己定义对话框中将要显示出什么东西. 首先看看progressDialog里面的方法 setProgressStyle:设置进度条风格,风格为圆形,旋转的. setTitlt:设置标题 setMessage:设置提示信息: setIcon:设置标题图标: setIndeterminate:设置ProgressDialog 的进度条

Android环形进度条(安卓默认形式)实例代码_Android

Android开发中,有很多的功能在实际应用中都起了很大的作用,比如android进度条的实现方式,下面给大家介绍Android环形进度条(安卓默认形式),具体内容如下所示: .xml <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_widt

Android环形进度条(安卓默认形式)实例代码

Android开发中,有很多的功能在实际应用中都起了很大的作用,比如android进度条的实现方式,下面给大家介绍Android环形进度条(安卓默认形式),具体内容如下所示: .xml <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_widt

Android自定义进度条的圆角横向进度条实例详解_Android

1.本文将向你介绍自定义进度条的写法,比较简单,但还是有些知识点是需要注意的: invalidate()方法 RectF方法的应用 onMeasure方法的应用 2.原理 画3层圆角矩形,底层为黑色,第二层为灰色,最上一层为进度条颜色,示例图如下: 3.效果图   实现圆角进度条还有很多其他方法,比如在Progress控件里填充圆角图片,通过拉伸图片来达到预想的效果,虽然听起来很简单,但实现起来还是有些麻烦的. 4.解说方法 (1)invalidate()方法 invalidate()是用来刷新

android自定义进度条渐变圆形_Android

在安全卫生上,经常看到有圆形的进度条在转动,效果非常好看,于是就尝试去实现一下,具体实现过程不多说了,直接上效果图,先炫耀下. 效果图: 分析:比较常见于扫描结果.进度条等场景 利用canvas.drawArc(RectF oval, float startAngle, float sweepAngle, boolean useCenter, Paint paint)绘制圆弧 Paint的一些属性定义粗细.颜色.样式等 LinearGradient实现颜色的线型渐变 同样的道理,可以画出长条进度