文档章节

ProgressDialog用法

 的书法上的
发布于 2014/05/04 15:04
字数 205
阅读 49
收藏 0

package android.huada;


import android.app.Activity;
import android.app.ProgressDialog;
import android.os.Bundle;
import android.os.Handler;
import android.os.Message;

public class ProgressDialogActivity extends Activity {
    /** Called when the activity is first created. */
 
 ProgressDialog progressDialog;
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
       
        progress("下载数据中", "请稍等......");
 
     
     
    }
   
    public void progress(String title,String message){
     progressDialog = new ProgressDialog(this);
     updateThread thread= new updateThread();
     progressDialog.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL);
     progressDialog.setMessage(message);
     progressDialog.setTitle(title);
     progressDialog.setProgress(0);
     progressDialog.setMax(100);
     progressDialog.show();
     thread.start();

        }
   
    Handler handler = new Handler(){

  @Override
  public void handleMessage(Message msg) {
   // TODO Auto-generated method stub
   if(msg.what>=100){
    progressDialog.cancel();
       }
    progressDialog.setProgress(msg.what);
   super.handleMessage(msg);
  }
     
    };
   
    class updateThread extends Thread{
     public void run(){
      handler.sendEmptyMessage(0);
      try {
    updateThread.sleep(1000);
    handler.sendEmptyMessage(10);
       updateThread.sleep(1000);
       handler.sendEmptyMessage(20);
       updateThread.sleep(1000);
       handler.sendEmptyMessage(30);
       updateThread.sleep(1000);
       handler.sendEmptyMessage(40);
       updateThread.sleep(1000);
       handler.sendEmptyMessage(50);
       updateThread.sleep(1000);
       handler.sendEmptyMessage(60);
       updateThread.sleep(1000);
       handler.sendEmptyMessage(70);
       updateThread.sleep(1000);
       handler.sendEmptyMessage(80);
       updateThread.sleep(1000);
       handler.sendEmptyMessage(100);
       updateThread.sleep(1000);
       
   } catch (InterruptedException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
   }
      
     }
    };
}

3.配置文件main.xml代码如下
4.此项目是通过线程及时修改UI,运行效果图如下

本文转载自:http://blog.163.com/lhl_soft/blog/static/20175000420121683516976/

共有 人打赏支持
粉丝 5
博文 72
码字总数 58940
作品 0
东城
私信 提问
ProgressDialog的简单应用,等待提示

在应用中经常会用到一些费时的操作,需要用户进行等待,比如加载网页内容…… 这时候就需要一个提示来告诉用户程序正在执行,并没有假死或者真死……囧…… 而ProgressBar、ProgressDialog等...

方毅超
2014/05/17
0
0
Android Dialog用法

创建对话框   一个对话框一般是一个出现在当前Activity之上的一个小窗口. 处于下面的Activity失去焦点, 对话框接受所有的用户交互. 对话框一般用于提示信息和与当前应用程序直接相关的小功...

sunfish
2016/12/15
7
0
android中LayoutInflater的用法及progressDialog的使用

在实际开发中LayoutInflater这个类还是非常有用的,它的作用类似于findViewById()。不同点是LayoutInflater是用来找res/layout/下的xml布局文件,并且实例化;而findViewById()是找xml布局文...

长平狐
2012/08/30
406
0
Android Handler的基本用法 进度条为例demo

直接上代码:activity_main: MainActivity:

ForingY
2016/12/09
4
0
AsyncTask的用法

Android提供了几种在其他线程中访问UI线程的方法。 Activity.runOnUiThread( Runnable ) View.post( Runnable ) View.postDelayed( Runnable, long ) Hanlder 这些类或方法同样会使你的代码很...

张辉原
2017/06/15
0
0

没有更多内容

加载失败,请刷新页面

加载更多

通过Docker容器连接代理Wormhole

Wormhole 是一个能识别命名空间的由 Socket 激活的隧道代理。可以让你安全的连接在不同物理机器上的 Docker 容器。可以用来完成一些有趣的功能,例如连接运行在容器本机的服务或者在连接后创...

Linux就该这么学
20分钟前
1
0
从架构到平台, POWER 9处理器最全解读

本文根据IBM中国芯片设计部门高级经理尹文,在「智东西公开课」的超级公开课IBM专场《POWER 9-认知时代的驱动力》 上的系统讲解整理而来。 本次讲解中,尹文老师从内核微架构、总线互连、异构...

Mr_zebra
23分钟前
1
0
openjdk和oraclejdk有什么区别吗?

1.授权协议的不同:OpenJDK采用GPL V2协议放出,而SUN JDK则采用JRL放出。两者协议虽然都是开放源代码的,但是在使用上的不同在于GPL V2允许在商业上使用,而JRL只允许个人研究使用。 2.Open...

吴伟祥
24分钟前
2
0
c++基类析构函数要声明为virtual的原因

更深层的原因不知道,不过标准规定,如果不声明为virtual,那么将会导致未定义行为。个人测试结果表明,如果不声明为virtual,那么派生类的析构函数将不会得到调用

安非他命
30分钟前
1
0
CentOS 7下protobuf的源码编译安装

protobuf的github地址:https://github.com/google/protobuf支持多种语言,有多个语言的版本,本文采用的是在CentOS 7下编译源码进行安装。 github上有详细的安装说明:https://github.com/...

xtof
37分钟前
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部