原文网址:http://blog.csdn.net/sjf0115/article/details/7255280

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

<1>简介

ProgressDialog是AlertDialog类的一个扩展,可以为一个未定义进度的任务显示一个旋转轮形状的进度动画,或者为一个指定进度的任务显示一个进度条。

一个对话框中显示一个进步指标和一个可选的文本信息或一个视图。只有文本信息或一个视图,可以同时使用。

对话框可以按back键取消。

<2>方法

setProgressStyle()     设置进度条风格

setTitle()    设置ProgressDialog 标题

setMessage()    设置ProgressDialog 提示信息

setIcon()    设置ProgressDialog 标题图标

setIndeterminate()  设置ProgressDialog 的进度条是否不明确

setCancelable()   设置ProgressDialog 是否可以按退回按键取消

setButton()    设置ProgressDialog 的一个Button

setProgress() 设置ProgressDialog 进度条进度

show()  显示ProgressDialog

<3>范例

  1. package com.yarin.android.Examples_04_24;
  2. import android.app.Activity;
  3. import android.app.ProgressDialog;
  4. import android.content.DialogInterface;
  5. import android.os.Bundle;
  6. import android.view.View;
  7. import android.view.View.OnClickListener;
  8. import android.widget.Button;
  9. public class Activity01 extends Activity
  10. {
  11. private Button Button1 = null;
  12. private Button Button2 = null;
  13. int count = 0;
  14. //声明进度条对话框
  15. ProgressDialog progressDialog = null;
  16. /** Called when the activity is first created. */
  17. @Override
  18. public void onCreate(Bundle savedInstanceState)
  19. {
  20. super.onCreate(savedInstanceState);
  21. setContentView(R.layout.main);
  22. //得到按钮对象
  23. Button1 = (Button)findViewById(R.id.Button01);
  24. Button2 = (Button)findViewById(R.id.Button02);
  25. //设置mButton01的事件监听
  26. Button1.setOnClickListener(new Button1Listener());
  27. //设置mButton02的事件监听
  28. Button2.setOnClickListener(new Button2Listener());
  29. }
  30. private class Button1Listener implements OnClickListener{
  31. public void onClick(View v) {
  32. //创建ProgressDialog对象
  33. progressDialog = new ProgressDialog(Activity01.this);
  34. // 设置进度条风格,风格为圆形,旋转的
  35. progressDialog.setProgressStyle(ProgressDialog.STYLE_SPINNER);
  36. // 设置ProgressDialog 标题
  37. progressDialog.setTitle("提示");
  38. // 设置ProgressDialog 提示信息
  39. progressDialog.setMessage("这是一个圆形进度条对话框");
  40. // 设置ProgressDialog 标题图标
  41. progressDialog.setIcon(R.drawable.a);
  42. // 设置ProgressDialog 的进度条是否不明确
  43. progressDialog.setIndeterminate(false);
  44. // 设置ProgressDialog 是否可以按退回按键取消
  45. progressDialog.setCancelable(true);
  46. //设置ProgressDialog 的一个Button
  47. progressDialog.setButton("确定", new SureButtonListener());
  48. // 让ProgressDialog显示
  49. progressDialog.show();
  50. }
  51. }
  52. //Dialog中确定按钮的监听器
  53. private class SureButtonListener implements android.content.DialogInterface.OnClickListener{
  54. public void onClick(DialogInterface dialog, int which) {
  55. //点击“确定按钮”取消对话框
  56. dialog.cancel();
  57. }
  58. }
  59. private class Button2Listener implements OnClickListener{
  60. public void onClick(View v) {
  61. count = 0;
  62. // 创建ProgressDialog对象
  63. progressDialog = new ProgressDialog(Activity01.this);
  64. // 设置进度条风格,风格为长形
  65. progressDialog.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL);
  66. // 设置ProgressDialog 标题
  67. progressDialog.setTitle("提示");
  68. // 设置ProgressDialog 提示信息
  69. progressDialog.setMessage("这是一个长形对话框进度条");
  70. // 设置ProgressDialog 标题图标
  71. progressDialog.setIcon(R.drawable.a);
  72. // 设置ProgressDialog 进度条进度
  73. progressDialog.setProgress(100);     《==应该改为 progressDialog.setMax(100)
  74. // 设置ProgressDialog 的进度条是否不明确
  75. progressDialog.setIndeterminate(false);
  76. // 设置ProgressDialog 是否可以按退回按键取消
  77. progressDialog.setCancelable(true);
  78. // 让ProgressDialog显示
  79. progressDialog.show();
  80. new Thread()
  81. {
  82. public void run()
  83. {
  84. try
  85. {
  86. while (count <= 100)
  87. {
  88. // 由线程来控制进度。
  89. progressDialog.setProgress(count++);
  90. Thread.sleep(100);
  91. }
  92. progressDialog.cancel();
  93. }
  94. catch (InterruptedException e)
  95. {
  96. progressDialog.cancel();
  97. }
  98. }
  99. }.start();
  100. }
  101. }
  102. }
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
  3. android:orientation="vertical"
  4. android:layout_width="fill_parent"
  5. android:layout_height="fill_parent"
  6. >
  7. <Button
  8. android:id="@+id/Button01"
  9. android:layout_width="wrap_content"
  10. android:layout_height="wrap_content"
  11. android:text="圆形进度条" />
  12. <Button
  13. android:id="@+id/Button02"
  14. android:layout_width="wrap_content"
  15. android:layout_height="wrap_content"
  16. android:text="长形进度条" />
  17. </LinearLayout>

【转】Android ProgressDialog的使用的更多相关文章

  1. 【转】Android ProgressDialog的使用2

    原文网址:http://www.cnblogs.com/hnrainll/archive/2012/03/28/2420908.html <?xml version="1.0" ...

  2. Android ProgressDialog 加载进度

    <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools= ...

  3. android progressdialog 对话框试用实例

    ProgressDialog 跟AlertDialog用法差不多,不同的是:ProgressDialog 显示的是一种"加载中"的效果,android 中 ProgressDial ...

  4. android ProgressDialog 正在载...Loading...

    final ProgressDialog pd = new ProgressDialog(mContext); pd.setMessage("正在加载..."); pd.show( ...

  5. Android——ProgressDialog 进度条对话框

    public class ProgressDialogActivity extends Activity {    private Button btn_large_pd, btn_horizonta ...

  6. Android ProgressDialog 简单实用

    ProgressDialog progressDialog; @SuppressLint("HandlerLeak") Handler handler1 = new Handler ...

  7. android:ProgressDialog控件

    ProgressDialog 和 AlertDialog 有点类似,都可以在界面上弹出一个对话框,都能够屏蔽 掉其他控件的交互能力.不同的是,ProgressDialog 会在对话框中显示一个进度条, ...

  8. 自定义android ProgressDialog

    Android系统自己提供的UI的都是比较难看的,开发中经常用到自定义对话框,下面分享个最近项目中使用的加载框.   下面是源代码,主要的原理就是准备几个图片,然后循环播放. MainActivity ...

  9. Android学习笔记_81_Android ProgressDialog ProgressBar 各种效果

    1,弹出Dialog 屏幕不变暗. 创建一个样式就OK了:在styles.xml文件里添加样式: 1, <style name="dialog" parent="@ ...

随机推荐

  1. Asp.net简单三层+Sqllite 增删改查

    新建项目à新建一个空白解决方案 在Model新建一个实体类 using System; using System.Collections.Generic; using System.Linq; usi ...

  2. 【原创教程】虎咽CSS

      上节课我们讲了HTML基础,回顾的事我不干了,因为你可以回头看很多遍,这节课我们来学习下CSS这门艺术的基础知识,一直以来我们都是CSS,CSS那么CSS到底是什么呢,惯例,我又来一层一层把CSS ...

  3. C#实现从EXCEL文件读取数据到SqlServer数据库

    用第三方组件:NPOI组件实现 先去官网:http://npoi.codeplex.com/下载需要引入dll(可以选择.net2.0或者.net4.0的dll),然后在网站中添加引用.使用 NPOI ...

  4. 当前时间 js

    当前时间-倒计时下载 效果: 代码: <!doctype html> <html> <head> <meta http-equiv="Content ...

  5. (转)C#中的 break 与continue 的使用和注意

    今天学习循环中断的 break  和continue 1.首先是  break ,大家请看代码: 1 2 3 4 5 6 7 8 9 10 11 12 int a = 0;            wh ...

  6. [功能帮助类] C#取汉字拼音的首字母PinYin帮助类 (转载)

    点击下载 PinYin.rar 主要功能就是取汉字拼音的首字母,只要你输入一个汉字,或者是多个汉字就会取出相应的道字母,主要是方便查询使用的 /// <summary> /// 编 码 人 ...

  7. Android 设计随便说说之简单实践(合理组合)

    上一篇(Android 设计随便说说之简单实践(模块划分))例举了应用商店设计来说明怎么做模块划分.模块划分主要依赖于第一是业务需求,具体是怎么样的业务.应用商店则包括两个业务,就是向用户展示appl ...

  8. AndroidStudio中 R文件缺失的办法

    AndroidStudio中 R文件缺失 找不到R文件的原因有如下两类: 1:IDE或代码问题,非个人原因: 2:个人误操作导致IDE不予提示R文件: 下面是解决办法: 第一种 ①首先确保资源文件是否 ...

  9. 2D动态光照

    对场景内所有点发出射线, 如果射线被某条边阻挡, 则射线停留在阻挡的边上, 如果射线顺利抵达终点, 则对射线偏移-0.001, +0.001角度, 再射出2条射线, 停留在后续的阻挡边上. 把最终的射 ...

  10. 3D Game Programming with directx 11 习题答案 8.3

    第八章 第三题 1.将flare.dds和flarealpha.dds拷贝到工程目录 2.创建shader resource view HR(D3DX11CreateShaderResourceVie ...