ProgressDialog的简单应用,等待提示
2014-05-17 00:00
253 查看
在应用中经常会用到一些费时的操作,需要用户进行等待,比如加载网页内容……
这时候就需要一个提示来告诉用户程序正在执行,并没有假死或者真死……囧……
而ProgressBar、ProgressDialog等就是专门干这个的。
以ProgressDialog为例,一般的使用它步骤为:在执行耗时间的操作之前弹出ProgressDialog提示用户,然后开一个新线程,在新线程里执行耗时的操作,执行完毕之后通知主程序将ProgressDialog结束。
以下是一个demo,很简单的用法:
package com.android.ui;
import android.app.Activity;
import android.app.ProgressDialog;
import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
public class MainActivity extends Activity {
private Button button;
private ProgressDialog pd;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
button = (Button) findViewById(R.id.button1);
button.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
/* 显示ProgressDialog */
pd = ProgressDialog.show(MainActivity.this, "标题", "加载中,请稍后……");
/* 开启一个新线程,在新线程里执行耗时的方法 */
new Thread(new Runnable() {
@Override
public void run() {
spandTimeMethod();// 耗时的方法
handler.sendEmptyMessage(0);// 执行耗时的方法之后发送消给handler
}
}).start();
}
});
}
private void spandTimeMethod() {
try {
Thread.sleep(5000);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
Handler handler = new Handler() {
@Override
public void handleMessage(Message msg) {// handler接收到消息后就会执行此方法
pd.dismiss();// 关闭ProgressDialog
}
};
}
main.xml中只有一个Button,就不贴了,程序应该很好理解,点击按钮后弹出ProgressDialog,在新线程中执行耗时操作(Thread.sleep(5000);),执行完毕之后通知handler,结束ProgressDialog。
运行效果如下:
这时候就需要一个提示来告诉用户程序正在执行,并没有假死或者真死……囧……
而ProgressBar、ProgressDialog等就是专门干这个的。
以ProgressDialog为例,一般的使用它步骤为:在执行耗时间的操作之前弹出ProgressDialog提示用户,然后开一个新线程,在新线程里执行耗时的操作,执行完毕之后通知主程序将ProgressDialog结束。
以下是一个demo,很简单的用法:
package com.android.ui;
import android.app.Activity;
import android.app.ProgressDialog;
import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
public class MainActivity extends Activity {
private Button button;
private ProgressDialog pd;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
button = (Button) findViewById(R.id.button1);
button.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
/* 显示ProgressDialog */
pd = ProgressDialog.show(MainActivity.this, "标题", "加载中,请稍后……");
/* 开启一个新线程,在新线程里执行耗时的方法 */
new Thread(new Runnable() {
@Override
public void run() {
spandTimeMethod();// 耗时的方法
handler.sendEmptyMessage(0);// 执行耗时的方法之后发送消给handler
}
}).start();
}
});
}
private void spandTimeMethod() {
try {
Thread.sleep(5000);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
Handler handler = new Handler() {
@Override
public void handleMessage(Message msg) {// handler接收到消息后就会执行此方法
pd.dismiss();// 关闭ProgressDialog
}
};
}
main.xml中只有一个Button,就不贴了,程序应该很好理解,点击按钮后弹出ProgressDialog,在新线程中执行耗时操作(Thread.sleep(5000);),执行完毕之后通知handler,结束ProgressDialog。
运行效果如下:
相关文章推荐
- ProgressDialog的简单应用,等待提示
- 【转】我的Android笔记(十)—— ProgressDialog的简单应用,等待提示
- ProgressDialog的简单应用,等待提示
- 我的Android笔记(十)—— ProgressDialog的简单应用,等待提示
- 我的Android笔记(十)—— ProgressDialog的简单应用,等待提示 (转载)
- 我的Android笔记(十)—— ProgressDialog的简单应用,等待提示
- Android仿百度谷歌搜索自动提示框AutoCompleteTextView简单应用示例
- ProgressDialog的简单应用
- 简单的实现事件过程中友好等待提示功能
- Android一个简单快捷的双击提示退出应用
- Android基础教程(三)之-----简单的Button事件响应综合提示控件Toast的应用
- 【转】 Android用于提示等待的ProgressDialog
- Javascript基础——定时器的使用及简单小应用(简易时钟1、延时提示框)
- Android文本自动提示框的简单应用实例
- Android用于提示等待的ProgressDialog
- Android入门教程(八)之-----简单的Button事件响应综合提示控件Toast的应用(转)
- Windows中线程的基础知识和简单应用----Thread的等待
- Android文本自动提示框的简单应用实例
- Android基础教程(三)之-----简单的Button事件响应综合提示控件Toast的应用
- Android基础教程(三)之-----简单的Button事件响应综合提示控件Toast的应用