繁体   English   中英

ProgressDialog 继续显示,尽管被取消和隐藏

[英]ProgressDialog keeps on showing despite being cancelled and hidden

现在,我正在为预计需要几秒钟的事件模拟 ProgressDialog 的显示。

我是这样做的:

progressDialog = new ProgressDialog(getContext());
progressDialog.setMessage(getString(R.string.calendar_load));
progressDialog.setCancelable(false);
progressDialog.show();
Thread t=new Thread(new Runnable() {
            @Override
            public void run() {

                try {
                    Thread.sleep(6000);
                } catch (InterruptedException e) {
                    e.printStackTrace();
                }

                getActivity().runOnUiThread(new Runnable()
                {
                    @Override
                    public void run() {

                        progressDialog.cancel();
                        progressDialog.hide();

但是,即使我已经在调试中检查了 progressDialog.cancel() 和 progressDialog.hide() 执行对话框,它仍然明显地以不确定的方式继续显示。

什么可能导致这种行为?

问题已解决:感谢所有回答/评论的人,它看起来像一个模拟器错误(实际上它也曾在模拟器上工作过一段时间)。

调用progressDialog.dismiss();

你能试试这个片段吗?

progressDialog.show();
            new Thread(new Runnable() {
                @Override
                public void run() {
                    try {
                        while (progressDialog.getProgress() <= progressDialog.getMax()) {
                            Thread.sleep(100);
                            handle.sendMessage(handle.obtainMessage());
                            if (progressDialog.getProgress() == progressDialog.getMax()) {
                                progressDialog.dismiss();
                            }
                        }

                    } catch (Exception e) {
                        e.printStackTrace();
                    }
                }
            }).start();

            Handler handle = new Handler() {
                    @Override
                    public void handleMessage(Message msg) {
                        super.handleMessage(msg);
                        progressDialog.incrementProgressBy(1);
                    }
            };

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM