APP应用中经常会下载某些东西,这里面有涉及到进度对话框,今天来学习下。

首先,布局里放进两个按钮,点击一个显示条形进度条,另一个显示圆形进度条。代码如下:

 <?xml version="1.0" encoding="utf-8"?>
<LinearLayout
android:id="@+id/LinearLayout01"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
xmlns:android="http://schemas.android.com/apk/res/android"> <Button
android:id="@+id/progress"
android:layout_width="128dp"
android:layout_height="wrap_content"
android:text="条形进度条" /> <Button
android:id="@+id/circle"
android:layout_width="128dp"
android:layout_height="wrap_content"
android:text="圆形进度条" /> </LinearLayout>

显示效果:

修改MainActivity.java文件:

 package com.example.progressdialog;

 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 MainActivity extends Activity { private Button m_btnProgress = null;
private Button m_btnCircle = null;
private ProgressDialog pDialog = null;
private int iCount = 0; @Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main); m_btnProgress = (Button) findViewById(R.id.progress);
m_btnCircle = (Button) findViewById(R.id.circle); m_btnProgress.setOnClickListener(new View.OnClickListener() { @Override
public void onClick(View v) {
iCount = 0;
pDialog = new ProgressDialog(MainActivity.this); // 设置进度条风格,风格为长形
pDialog.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL); // 设置ProgressDialog 标题
pDialog.setTitle("条形进度条"); // 设置ProgressDialog 提示信息
pDialog.setMessage("正在下载中……"); // 设置ProgressDialog 标题图标
pDialog.setIcon(R.drawable.ic_launcher); // 设置ProgressDialog 进度条进度
pDialog.setProgress(100); // 设置ProgressDialog 的进度条是否不明确
pDialog.setIndeterminate(false); // 设置ProgressDialog 是否可以按退回按键取消
pDialog.setCancelable(true); // 让ProgressDialog显示
pDialog.show(); new Thread() {
public void run() {
try {
while (iCount <= 100) {
// 由线程来控制进度。
pDialog.setProgress(iCount++);
Thread.sleep(80);
}
pDialog.cancel();
} catch (InterruptedException e) { }
}
}.start(); }
}); m_btnCircle.setOnClickListener(new View.OnClickListener() { @Override
public void onClick(View v) { iCount = 0;
// 创建ProgressDialog对象
pDialog = new ProgressDialog(MainActivity.this); // 设置进度条风格,风格为圆形,旋转的
pDialog.setProgressStyle(ProgressDialog.STYLE_SPINNER); // 设置ProgressDialog 标题
pDialog.setTitle("圆形进度条"); // 设置ProgressDialog 提示信息
pDialog.setMessage("正在下载中……"); // 设置ProgressDialog 标题图标
pDialog.setIcon(R.drawable.ic_launcher); // 设置ProgressDialog 进度条进度
pDialog.setProgress(100); // 设置ProgressDialog 的进度条是否不明确
pDialog.setIndeterminate(false); // 设置ProgressDialog 是否可以按退回按键取消
pDialog.setCancelable(true); // 设置ProgressDialog 的一个Button
pDialog.setButton("取消", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int i) {
// 点击“取消”按钮取消对话框
dialog.cancel();
}
}); // 让ProgressDialog显示
pDialog.show(); // 创建线程实例
new Thread() {
public void run() {
try {
while (iCount <= 100) {
// 由线程来控制进度。
pDialog.setProgress(iCount++);
Thread.sleep(80);
}
pDialog.cancel();
} catch (InterruptedException e) {
pDialog.cancel();
}
} }.start(); }
});
} }

点击按钮效果:

    

10.Android之ProgressDialog进度对话框学习的更多相关文章

  1. (转载)Android自定义ProgressDialog进度等待框

    Android自定义ProgressDialog进度等待框 作者:无缘公子 字体:[增加 减小] 类型:转载 时间:2016-01-11我要评论 这篇文章主要介绍了Android自定义Progress ...

  2. 【转】24. android dialog ——ProgressDialog 进度条对话框详解

    原文网址:http://blog.csdn.net/jamesliulyc/article/details/6375598 首先在onCreateDialog方法里创建一个ProgressDialog ...

  3. 【转】【Android】ProgressDialog进度条对话框的使用

    Android ProgressDialog进度条对话框的使用: 转自:http://aina-hk55hk.iteye.com/blog/679134/ <?xml version=" ...

  4. android学习笔记20——ProgressDialog进度条对话框

    ProgressDialog==>进度条对话框 ProgressDialog本身就代表一个进度条对话框,程序只需要创建ProgressDialog实例,并将其显示出来就是一个进度条对话框:开发者 ...

  5. Android学习笔记(九)——更复杂的进度对话框

    显示操作进度的对话框 1.使用上一篇创建的同一项目.在activity_main.xml文件里加入一个Button: <Button android:id="@+id/btn_dial ...

  6. Android学习笔记(八)——显示运行进度对话框

    显示运行进度对话框 我们经常有这种经历:运行某一应用程序时.须要等待一会,这时会显示一个进度(Please Wait)对话框,让用户知道操作正在进行. 我们继续在上一篇中的程序中加入代码~ 1.在上一 ...

  7. Android开发系列(二十七):使用ProgressDialog创建进度对话框

    进度对话框在寻常的应用中非经常见,比方下载的时候,打开页面的时候.转移文件等等.有环形的.有长条形的. 基本就这两种 创建进度对话框的两种方式: 1.创建ProgressDialog实例,然后调用Pr ...

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

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

  9. 使用ProgressDialog创建进度对话框

    ProgressDialog代表了进度对话框,程序只要创建ProgressDialog实例,并将它显示出来就是一个进度对画框.使用ProgressDialog创建进度对话框有如下两种方式. ①如果只是 ...

随机推荐

  1. POJ 1515 Street Directions --一道连通题的双连通和强连通两种解法

    题意:将一个无向图中的双向边改成单向边使图强连通,问最多能改多少条边,输出改造后的图. 分析: 1.双连通做法: 双连通图转强连通图的算法:对双连通图进行dfs,在搜索的过程中就能按照搜索的方向给所有 ...

  2. 彻底解决Spring MVC 中文乱码 问题

    1:表单提交controller获得中文参数后乱码解决方案 注意: jsp页面编码设置为UTF-8 form表单提交方式为必须为post,get方式下面spring编码过滤器不起效果 <%@ p ...

  3. Hadoop 一二事(1) - 简单介绍与杂谈

    大数据大数据,身边很多朋友都在谈大数据,Big Data!!! 到底是什么,用来干嘛的,也很少有人说得出一二,那今天开始就简单说说这一二事吧 hadoop 的来源:是作者女儿的一个玩具 - 一只黄色的 ...

  4. JavaWeb学习之Servlet(二)----Servlet的生命周期、继承结构、修改Servlet模板

    [声明] 欢迎转载,但请保留文章原始出处→_→ 文章来源:http://www.cnblogs.com/smyhvae/p/4140466.html 一.http协议回顾: 在上一篇文章中:JavaW ...

  5. AC日记——产生数 codevs 1009 (弗洛伊德)(组合数学)

    1009 产生数 2002年NOIP全国联赛普及组  时间限制: 1 s  空间限制: 128000 KB  题目等级 : 黄金 Gold 题解  查看运行结果     题目描述 Descriptio ...

  6. zabbix错误记录

    zabbix部署好,在使用一段时间后,出现了不少报错,在此简单做一记录.1)Zabbix监控界面报错“Lack of free swap space”解决公司线上部署的zabbix3.0的监控界面首页 ...

  7. android获取当前行所属类和所属方法名

        第一种方法: String Method = Thread.currentThread().getStackTrace()[2].getMethodName();   第二种方法: priva ...

  8. isScroll代码

    html: <div class="wrap"> <div class="content"> //内容-必须为第一个子元素 </d ...

  9. 视频会议的3G智能手机移植技术

    现今的视频会议系统已经兼容3G手机等移动终端设备,而3G智能手机使用的操作系统一般与PC的操作系统不一样,其开发环境一般都在PC上进行,通过模拟器在PC上进行手机系统的应用程序开发,而在这些操作系统上 ...

  10. [win]AD域组策略wifi自动配置

    http://wenku.baidu.com/link?url=MC950wliAZNeVUJ2M6Y1VTi5faqo7kG374fyBjW57r0qyLJkBZLg5ypiql4RFywQ8q7y ...