package com.example.administrator.myapplication;

import android.app.AlertDialog;
import android.app.ProgressDialog;
import android.content.DialogInterface;
import android.os.Bundle;
import android.os.Message;
import android.support.v7.app.ActionBarActivity;
import android.util.Log;
import android.view.View;
import android.widget.Toast;

import java.util.logging.Handler;
import java.util.logging.LogRecord;

public class DialogActivity extends ActionBarActivity
{

    ProgressDialog progress;
    protected android.os.Handler handler=new android.os.Handler()
    {
        final int satrt =001;
        final int end =002;
        @Override
        //处理子线程的消息  public void handleMessage(Message msg) {
            switch (msg.what)
            //对消息标识符进行选择  {
                case satrt:
                    progress.setProgress(msg.arg1);   //修改进度条  break;
                case end:
                    progress.dismiss();//进度条完成,关闭进度条  break;
            }
        }
    };
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_dialog);

    }


    //按钮控件绑定的方法  public void displayProgress(View view)
    {
     progress= new ProgressDialog(this);//实例化我们的ProgressDialog对象  progress.setTitle("这是一个进度条");//设置标题  progress.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL);
        //设置进度框的风格  progress.show();//最后显示进度条   /*  开启一个线程  */  new Thread(){
            public void run()
            {
                for(int i=0;i<100;i++)
                {
                    Message ma=new Message();//创建一个消息  ma.what=001;//设置消息的唯一标识  ma.arg1=i;//设置参数  handler.sendMessage(ma);//发送消息到主线程的队列中  try {
                        Thread.sleep(100);//设置休眠  } catch (InterruptedException e) {
                        e.printStackTrace();
                    }
                }
                //创建关闭进度条的消息  Message ma=new Message();
                ma.what=002;//关闭进度条的唯一标识  handler.sendMessage(ma);//发送消息到主线程的队列中  }

        }.start();
    }

}


更多相关文章

  1. Android[中级教程] 深入剖析Android消息机制
  2. Android消息推送接收后,通知栏的显示
  3. Java:在特定队列大小之后,以提交方式阻塞提交的ExecutorService。
  4. 在使用visualvm进行分析时,如何避免“Profiler代理警告:无法查找缓

随机推荐

  1. return关键字在php中的作用(含详解)
  2. 详解PHP死循环写法和作用
  3. use关键字在php中的使用(含代码)
  4. str_replace() 函数在php中的应用(附实例
  5. 详解php中的几种常见排序方法(附代码)
  6. PHP递归算法的应用(含示例)
  7. PHP实例计算经纬坐标间的距离
  8. 处理PHP strtotime的BUG
  9. php array_filter函数的使用(详解)
  10. 如何用PHP获取当前页面完整URL地址