ProgressDialog的用法示例

举报
ShaderJoy 发表于 2021/12/30 01:50:23 2021/12/30
【摘要】 1.新建Android项目 ProgressDialog    在包andorid.huada下建文件ProgressDialogActivity.java 2.ProgressDialogActivity.java代码如下 package android.huada; import and...

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

2.ProgressDialogActivity.java代码如下


  
  1. package android.huada;
  2. import android.app.Activity;
  3. import android.app.ProgressDialog;
  4. import android.os.Bundle;
  5. import android.os.Handler;
  6. import android.os.Message;
  7. public class ProgressDialogActivity extends Activity
  8. {
  9. /** Called when the activity is first created. */
  10. ProgressDialog progressDialog;
  11. public void onCreate(Bundle savedInstanceState)
  12. {
  13. super.onCreate(savedInstanceState);
  14. setContentView(R.layout.main);
  15. progress("下载数据中", "请稍等......");
  16. }
  17. public void progress(String title, String message)
  18. {
  19. progressDialog = newProgressDialog(this);
  20. updateThread thread = new updateThread();
  21. progressDialog.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL);
  22. progressDialog.setMessage(message);
  23. progressDialog.setTitle(title);
  24. progressDialog.setProgress(0);
  25. progressDialog.setMax(100);
  26. progressDialog.show();
  27. thread.start();
  28. }
  29. Handler handler = new Handler()
  30. {
  31. @Override
  32. public void handleMessage(Message msg)
  33. {
  34. // TODO Auto-generated method stub
  35. if (msg.what >= 100)
  36. {
  37. progressDialog.cancel();
  38. }
  39. progressDialog.setProgress(msg.what);
  40. super.handleMessage(msg);
  41. }
  42. };
  43. class updateThread extends Thread
  44. {
  45. publicvoid run()
  46. {
  47. handler.sendEmptyMessage(0);
  48. try
  49. {
  50. updateThread.sleep(1000);
  51. handler.sendEmptyMessage(10);
  52. updateThread.sleep(1000);
  53. handler.sendEmptyMessage(20);
  54. updateThread.sleep(1000);
  55. handler.sendEmptyMessage(30);
  56. updateThread.sleep(1000);
  57. handler.sendEmptyMessage(40);
  58. updateThread.sleep(1000);
  59. handler.sendEmptyMessage(50);
  60. updateThread.sleep(1000);
  61. handler.sendEmptyMessage(60);
  62. updateThread.sleep(1000);
  63. handler.sendEmptyMessage(70);
  64. updateThread.sleep(1000);
  65. handler.sendEmptyMessage(80);
  66. updateThread.sleep(1000);
  67. handler.sendEmptyMessage(100);
  68. updateThread.sleep(1000);
  69. } catch (InterruptedException e)
  70. {
  71. // TODO Auto-generated catch block
  72. e.printStackTrace();
  73. }
  74. }
  75. };
  76. }

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


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

ProgressDialog用法 - lhl_soft -                  程序员



文章来源: panda1234lee.blog.csdn.net,作者:panda1234lee,版权归原作者所有,如需转载,请联系作者。

原文链接:panda1234lee.blog.csdn.net/article/details/8788191

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。