【Android每日一讲】2012.11.01 程序加载中,请稍后 - ProgressDialog 与线程整合应用
1. 范例说明常看见Windows窗口程序里或Flash程序的“加载中”对话框,在Android里,则是通过ProgressDialog来运行,这个类封装在Android.app.ProgressDialog里。该范例将设计一个按钮,在单击按钮之后开始线程的周期,在运行的过程中显示ProgressDialog,最后当线程运行完毕时,选择结束ProgressDialog对话窗口。
2. 运行结果
3. 编写代码
Button.OnClickListener myShowProgressBar = new Button.OnClickListener() {public void onClick(View arg0) {final CharSequence strDialogTitle = getString(R.string.str_dialog_title);final CharSequence strDialogBody = getString(R.string.str_dialog_body);final CharSequence strDone = getString(R.string.str_dialog_done);// 显示Progress对话框myDialog = ProgressDialog.show(MainActivity.this, strDialogTitle,strDialogBody, false);myDialog.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL);mTextView1.setText(strDialogBody);new Thread() {public void run() {try {/* 在这里写上要后台执行的程序片段 *//* 为了明显看见效果,以暂停3秒作为示范 */sleep(3000);} catch (Exception e) {e.printStackTrace();} finally { // 卸除所建立的myDialog对象。myDialog.dismiss();}}}.start(); /* 开始执行线程 */}1.继承关系:
ProgressDialog->AlertDialog->Dialog->Object
2.查看Reference
3.Android 对话框中的进度条ProgressDialog
http://www.eyeandroid.com/thread-9844-1-1.html
作业:
1.写一个有进度更新的ProgressDialog
2.思考:如何在线程执行完毕后更新TextView内容为“正确执行完毕!”
视频讲解:http://www.eyeandroid.com/thread-9847-1-1.html