zoukankan      html  css  js  c++  java
  • 【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(); /* 开始执行线程 */
    		}


    4. 扩展学习与作业

    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
  • 相关阅读:
    最长上升序列,首尾连接
    带权并查集&&并查集
    开发者的小天地-1
    Binary Tree Maximum Path Sum
    Linked List Cycle II
    动归熟手题单
    java 正则表达式-忽略大小写与多行匹配
    KO之tab栏切换
    Vue中通过属性绑定为元素绑定style
    Vue中通过属性绑定为元素设置class
  • 原文地址:https://www.cnblogs.com/eyeandroid/p/2748961.html
Copyright © 2011-2022 走看看