进度条对话框

本文介绍了一个Android应用中使用进度条对话框的具体实现方式,包括如何创建对话框、设置样式、进度更新及响应取消操作等。通过一个具体的代码示例展示了如何在一个Activity中集成并使用进度条对话框。
public class MainActivity extends Activity {
    private ProgressDialog dialog;
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
    }

    public boolean onCreateOptionsMenu(Menu menu) {
        getMenuInflater().inflate(R.menu.main, menu);
        //创建一个进度条对话框对象
        dialog = new ProgressDialog(MainActivity.this);
        // dialog.setCancelable(false);//是否可以取消
        dialog.setIcon(R.drawable.ic_launcher);
        // dialog.cancel();//取消对话框
        dialog.setTitle("正在下载");
        dialog.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL);// 设置样式
        dialog.setMax(100);
        dialog.setProgress(50);
        dialog.setOnCancelListener(new OnCancelListener() {
            public void onCancel(DialogInterface dialog) {
                Toast.makeText(MainActivity.this, "残忍的取消下载", 0).show();
            }
        });
        return true;
    }

    public boolean onOptionsItemSelected(MenuItem item) {
        dialog.show();
        new Thread(){
            public void run() {
                for (int i = 0; i <= 100; i++) {
                    try {
                        Thread.sleep(100);
                    } catch (InterruptedException e) {
                        e.printStackTrace();
                    }
                    //dialog.setProgress(i);
                //每次加1
                dialog.incrementProgressBy(1);
                }

                for (int j = 100; j >= 0; j--) {
                    try {
                        Thread.sleep(100);
                    } catch (InterruptedException e) {
                        e.printStackTrace();
                    }
                    //dialog.setProgress(j);
                //每次减1  
                dialog.incrementProgressBy(-1);
                }

            };
        }.start();

        return super.onOptionsItemSelected(item);
    }

}

这里写图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值