Android Alert Dialog - how to hide the OK button a

2019-03-13 07:38发布

I have been developing an Android app.

I would like to hide the OK button after the user presses it, as the dialog window will stay at the foreground for some seconds while a computation takes place.

This is the code:

    new AlertDialog.Builder(this)
    .setMessage("This may take a while")
    .setPositiveButton("OK", new android.content.DialogInterface.OnClickListener() {                
        @Override
        public void onClick(DialogInterface dialog, int which) {
                       // hide the OK button - how?
                       // a lot of computation
        }
    })
    .show(); 

How can I achieve that?

P.S.: I am not interesting to more advanced techniques to handle a computation (such as: progress dialogs, multi-threading).

Thanks.

3条回答
我只想做你的唯一
2楼-- · 2019-03-13 08:12

You can set the visibility of button to invisible.

ok.setVisibility(View.INVISIBLE);
查看更多
走好不送
3楼-- · 2019-03-13 08:30
.setPositiveButton("OK", new android.content.DialogInterface.OnClickListener() {
    @Override
    public void onClick(DialogInterface dialog, int which) {
         ((AlertDialog)dialog).getButton(which).setVisibility(View.INVISIBLE);
         // the rest of your stuff
    }
})
查看更多
Animai°情兽
4楼-- · 2019-03-13 08:30
setPositiveButton("Ok", new DialogInterface.OnClickListener() {
    public void onClick(DialogInterface dialog, int id) {
        dialog.dismiss();

where dialog is DialogInterface.

查看更多
登录 后发表回答