ProgressDialog的用法示例

来源:互联网 发布:北风网大数据视频 编辑:程序博客网 时间:2024/05/16 09:23

1.新建Android项目 ProgressDialog    在包andorid.huada下建文件ProgressDialogActivity.java

2.ProgressDialogActivity.java代码如下

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;public void onCreate(Bundle savedInstanceState){super.onCreate(savedInstanceState);setContentView(R.layout.main);progress("下载数据中", "请稍等......");}public void progress(String title, String message){progressDialog = newProgressDialog(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(){@Overridepublic void handleMessage(Message msg){// TODO Auto-generated method stubif (msg.what >= 100){progressDialog.cancel();}progressDialog.setProgress(msg.what);super.handleMessage(msg);}};class updateThread extends Thread{publicvoid 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 blocke.printStackTrace();}}};}

3.配置文件main.xml代码如下

<?xml version="1.0" encoding="utf-8"?> <LinearLayoutxmlns:android="http://schemas.android.com/apk/res/android"     android:orientation="vertical"     android:layout_width="fill_parent"     android:layout_height="fill_parent"     > <TextView      android:layout_width="fill_parent"     android:layout_height="wrap_content"     android:text="@string/hello"     /> </LinearLayout>
4.此项目是通过线程及时修改UI,运行效果图如下

ProgressDialog用法 - lhl_soft -                  程序员