进度条对话框

1-普通进度对话框
复制代码
public void bt_8(View v)
    {
        final ProgressDialog progressDialog=new ProgressDialog(this);
        progressDialog.setTitle("提示");
        progressDialog.setMessage("请等待……");
        progressDialog.setCancelable(false);//防止点击其他地方就关闭

        progressDialog.show();

        //不在此写业务代码


        //开启子线程
        //多线程-继承;实现接口
        //1-继承Thread,重写里边的方法(run),调用start方法
        new Thread(){
            @Override
            public void run() {
                //延时  线程
                try {
                    Thread.sleep(1000);

                }
                catch (Exception e)
                {

                }
                //打开直接关闭
                progressDialog.dismiss();
            }
        }.start();//负责启动子线程,自动执行run方法

     }
View Code
复制代码

 

 

 

2-水平进度对话框

复制代码
public void bt_9(View v)
    {
        final ProgressDialog progressDialog=new ProgressDialog(this);
        progressDialog.setTitle("水平进度对话框");
        progressDialog.setMessage("正在加载……");
        progressDialog.setCancelable(false);

        //设置成水平
        progressDialog.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL);
        progressDialog.show();

        final TextView tv_1=(TextView)findViewById(R.id.tv_1);
        //启动一个子线程 实现接口的方式  Runnable,只有一个方法(run)
        new Thread(new Runnable() {
            @Override
            public void run() {
                //模拟进度变化
                for (int i=0;i<=100;i++) {
                    progressDialog.setProgress(i);

                    //延时  线程
                    try {
                        Thread.sleep(500);

                    } catch (Exception e) {

                    }
                }
                //在子线程里去访问UI线程的View
                runOnUiThread(new Runnable() {
                    @Override
                    public void run() {

                        tv_1.setText("下载完成");
                    }
                });

                //打开直接关闭
                progressDialog.dismiss();

            }
        }).start();
    }
View Code
复制代码

 

posted @   百事没事  阅读(210)  评论(0编辑  收藏  举报
编辑推荐:
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 25岁的心里话
· 按钮权限的设计及实现
点击右上角即可分享
微信分享提示