progressdialog.java
package com.zgy.progress;
import android.annotation.SuppressLint;
import android.app.Activity;
import android.app.ProgressDialog;
import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.widget.Button;
import android.widget.TextView;
public class ProgressBarDemo extends Activity {
private Button beginButton;
private TextView status;
private ProgressDialog progressDialog;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
beginButton = (Button)findViewById(R.id.begin_Btn);
status = (TextView)findViewById(R.id.status);
setListener(); // 调用监听
}
/*
* 用halldler来更新UI
*
* */
@SuppressLint("HandlerLeak")
private Handler handler = new Handler(){
@Override
public void handleMessage(Message msg) {
//关闭ProgressDialog
progressDialog.dismiss();
//更新UI
status.setText("Completed!");
}};
/*
*
*更新按钮
*点击事件
* */
private void setListener() {
beginButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
//显示progress
ProgressDialog.show(ProgressBarDemo.this, "loading", "wait",false);
new Thread(){
@Override
public void run(){
//
Calculation.calculute(4);
//向handler发送信息
handler.sendEmptyMessage(0);
}
}.start();
}
});
calculation.java
package com.zgy.progress;
public class Calculation {
/*
*
* 方法
* author zgy
*
* */
public static void calculute(int i) {
try {
Thread.sleep(i*1000);
} catch (Exception e) {
// TODO: handle exception
}
}
}