zoukankan      html  css  js  c++  java
  • Android ProgressDialog 加载进度

     1 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
     2     xmlns:tools="http://schemas.android.com/tools"
     3     android:layout_width="match_parent"
     4     android:layout_height="match_parent" >
     5 
     6     <Button
     7         android:layout_width="wrap_content"
     8         android:layout_height="wrap_content"
     9         android:onClick="progress"
    10         android:text="ProgressDialog" />
    11 
    12 </RelativeLayout>
     1 public class MainActivity extends Activity {
     2 
     3     @Override
     4     protected void onCreate(Bundle savedInstanceState) {
     5         super.onCreate(savedInstanceState);
     6         setContentView(R.layout.activity_main);
     7     }
     8     
     9     /**
    10      * ProgressDialog是AlertDialog类的子类,可以为一个未定义进度的任务显示一个旋转轮形状的进度动画,
    11      * 或者为一个指定进度的任务显示一个进度条。它的用处非常广泛,在每次用户操作一个延迟的任务时,我们都必须以进度对话框的形式告诉用户,
    12      * 否则用户并不知道操作已经开始,可能会多次操作同一个任务,并有可能导致异常发生。
    13      * @param v
    14      */
    15 
    16     public void progress(View v){
    17         final ProgressDialog dialog = new ProgressDialog(this);
    18         dialog.setTitle("进度条对话框");
    19         dialog.setMessage("正在加载...");
    20         //dialog.setProgressStyle(ProgressDialog.STYLE_SPINNER);//旋转轮进度
    21         dialog.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL);//水平加载进度条
    22         dialog.setMax(200);//默认值100
    23         dialog.show();
    24         new Thread(){
    25             public void run() {
    26                 int index = 0;
    27                 while(index++ < dialog.getMax()){
    28                     dialog.setProgress(index);
    29                     try {
    30                         Thread.sleep(100);
    31                     } catch (InterruptedException e) {
    32                         e.printStackTrace();
    33                     }
    34                 }
    35                 //加载完成关闭对话框
    36                 if(dialog!=null && dialog.isShowing()){
    37                     dialog.dismiss();
    38                 }
    39             }
    40         }.start();
    41     }
    42 }
    MainActivity
  • 相关阅读:
    android background属性问题
    AlertDialog 设置不同按钮的样式
    springboot controller统一异常处理
    springboot 配置自定义拦截器
    Linux中proc信息获取
    AliCloud-tools【分享】
    sql列转行
    算法
    静态变量与代码块
    AbstractQueuedSynchronizer(AQS)
  • 原文地址:https://www.cnblogs.com/Claire6649/p/5968954.html
Copyright © 2011-2022 走看看