ProgressDialog的使用:请稍等提示

 

      我们经常看到有些应用中会出现 “ 请稍等 ”  对话框,Android中ProgressDialog类可以实现该效果

                                                                                                                                 O(∩_∩)O~

 

layout/activity_main.xml代码如下:

 

<?xml version="1.0" encoding="utf-8"?>

    <LinearLayout
      xmlns:android="http://schemas.android.com/apk/res/android"
      android:orientation="horizontal"
      android:layout_width="fill_parent"
      android:layout_height="wrap_content"
      android:padding="20dp"
    >
      <Button
          android:id="@+id/circleButt"
          android:layout_width="wrap_content"
          android:layout_height="wrap_content"
          android:layout_marginLeft="20dp"
          android:text="圆形进度条"
          />
    <Button
        android:id="@+id/longButt"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginLeft="60dp"
        android:text="长形进度条"
        />
    </LinearLayout>
View Code

 


创建一个ProgressDialogExample类继承Activity

 1 package com.example.lenovo.a1101;
 2 
 3 import android.app.Activity;
 4 import android.app.ProgressDialog;
 5 import android.content.DialogInterface;
 6 import android.os.Bundle;
 7 import android.os.PersistableBundle;
 8 import android.preference.DialogPreference;
 9 import android.view.View;
10 import android.widget.Button;
11 import android.widget.Toast;
12 
13 /**
14  * Created by Lenovo on 2015/11/1.
15  */
16 public class ProgressDialogExample extends Activity {
17     Button circleBut;
18     Button longBut;
19     ProgressDialog myDialog;
20 
21     @Override
22     public void onCreate(Bundle savedInstanceState) {
23         super.onCreate(savedInstanceState);
24         setContentView(R.layout.activity_main);
25         circleBut = (Button) findViewById(R.id.circleButt);
26         longBut = (Button) findViewById(R.id.longButt);
27         circleBut.setOnClickListener(new View.OnClickListener() {
28             @Override
29             public void onClick(View v) {
30                 myDialog = new ProgressDialog(ProgressDialogExample.this); 
31                                      //创建progressDialog对象
32                 myDialog.setProgressStyle(ProgressDialog.STYLE_SPINNER);  
33                                       //设置进度条为圆形样式
34                 myDialog.setTitle("提示"); 
35                                       //设置进度条的标题信息
36                 myDialog.setMessage("主人,小白正在努力加载中……"); 
37                                       //设置进度条的提示信息
38                 myDialog.setIcon(R.drawable.ic_launch);
39                                        //是指进度条的图标
40                 myDialog.setIndeterminate(false);
41                                     //设置进度条是否为不明确
42                 myDialog.setCancelable(true);
43                 //为进度条添加"确定"按钮,并添加点击事件
44                 myDialog.setButton("确定", new DialogInterface.OnClickListener() {
45                     @Override
46                     public void onClick(DialogInterface dialog, int which) {
47                         myDialog.cancel();
48                     }
49                 });
50                 myDialog.show();
51             }
52         });
53         longBut.setOnClickListener(new View.OnClickListener() {
54             int count = 0;//存储进度条当前的进度值,初始值为0
55 
56             @Override
57             public void onClick(View v) {
58 
59                 myDialog = new ProgressDialog(ProgressDialogExample.this);
60                 myDialog.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL);
61                 myDialog.setTitle("提示");
62                 myDialog.setMessage("快马加鞭加载中……");
63                 myDialog.setIcon(R.drawable.ic_launch);
64                 myDialog.setIndeterminate(false);
65                 myDialog.setCancelable(true);
66                 myDialog.setMax(100);
67                                  //设置进度条的最大值
68                 myDialog.setProgress(0);
69                                     //默认值为0
70                 myDialog.setSecondaryProgress(50);
71                                        //设置第二进度条的长度
72                 myDialog.setButton("取消", new DialogInterface.OnClickListener() {
73 
74                     @Override
75                     public void onClick(DialogInterface dialog, int which) {
76                         myDialog.cancel();
77                     }
78 
79                 });
80                 myDialog.show();//显示进度条 
81                 new Thread() {             //定义线程,动态改变当前进度条的值
82                     public void run() {
83                         while (count <= 100) {
84                             myDialog.setProgress(count++);
85                             try {
86                                 Thread.sleep(100);
87                             } catch (InterruptedException e) {
88                                 e.printStackTrace();
89                             }
90                         }
91 
92                     }
93 
94                 }.start();
95 
96             }
97         });
98     }
99 }
View Code

 

          然而图标没有显示出来,明天再找问题所在!          各位路过的小伙伴可以帮帮忙!嘿嘿~(*^__^*) ……

 

posted @ 2015-11-01 21:21  白一  阅读(926)  评论(3编辑  收藏  举报