Ответ 1
Для этого вы можете использовать методы AlertDialog
.
AlertDialog alert = new AlertDialog.Builder(context).create();
if (alert.isShowing()) {
alert.dismiss();
}
Надеюсь, что это поможет.
Вот мой код -
View layout = LayoutInflater.from(this).inflate(R.layout.dialog_loc_info, null);
final Button mButton_Mobile = (Button) layout.findViewById(R.id.button);
AlertDialog.Builder builder = new AlertDialog.Builder(this);
builder.setView(layout);
mButton_Mobile.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {
if(builder.)
showDialog(); // this is another dialog, nothing to do with this code
}
});
builder.setNeutralButton(getString(android.R.string.ok),
new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
dialog.dismiss();
}
});
builder.show();
Для этого вы можете использовать методы AlertDialog
.
AlertDialog alert = new AlertDialog.Builder(context).create();
if (alert.isShowing()) {
alert.dismiss();
}
Надеюсь, что это поможет.
Альтернативный подход заключается в использовании метода для создания AlertDialog с помощью построителя, а затем создания AlertDialog без его отображения при установке AlertDialog в переменную класса.
Затем проверьте с помощью метода .isShowing();
Пример:
AlertDialog mAlertDialog;
public showMyAlertDialog(View layout){
AlertDialog.Builder builder = new AlertDialog.Builder(getContext());
builder.setView(layout);
builder.setNeutralButton(getString(android.R.string.ok),new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
dialog.dismiss();
mAlertDialog = null; //setting to null is not required persay
}
});
mAlertDialog = builder.create()
mAlertDialog.show();
}
public boolean isAlertDialogShowing(AlertDialog thisAlertDialog){
if(thisAlertDialog != null){
return thisAlertDialog.isShowing();
}
}
надеемся, что будет понятно, как использовать этот источник. приветствия
Вы можете проверить это следующим образом:
if(alert != null && alert.isShowing()){
alert.show();// or alert.dismiss() it
}
AlertDialog
extends Dialog
, который имеет isShowing().
Подсказка: AlertDialog.Builder
создает экземпляр AlertDialog
.:)