5

我想显示一个进度对话框,它只会在需要时显示“关闭”按钮,例如当进度值达到其最大值时。在那个“关闭”按钮上,我想关闭对话框。我用否定按钮制作了进度对话框,当用户单击它时我可以将其关闭,但我不希望“关闭”按钮在我想要或进度完成时一直可见/启用。

谢谢。

4

2 回答 2

5

为了建立纪尧姆的评论和卡里姆的回答,您可以隐藏/显示或启用/禁用 ProgressDialog 上的按钮,如下所示:

ProgressDialog dlg = new ProgressDialog(this);
dlg.setButton(ProgressDialog.BUTTON_NEUTRAL, 
              "Close", 
              new DialogInterface.OnClickListener() {                   
                        @Override
                        public void onClick(DialogInterface dialog, int which) {
                            //button click stuff here
                        }
                    });

dlg.show();    
dlg.getButton(ProgressDialog.BUTTON_NEUTRAL).setEnabled(false);
//or alternatively
//dlg.getButton(ProgressDialog.BUTTON_NEUTRAL).setVisibility(View.INVISIBLE);

Button任务完成后,您可以稍后启用。一定要getButton在你打电话后打电话show

于 2013-06-26T21:53:43.560 回答
1

您应该使用 ProgressBar 和 Button 构建自定义对话框。然后使用 Button.setVisibility(View.VISIBLE) 和 Button.setVisibility(View.INVISIBLE)

于 2012-12-12T00:19:55.927 回答