Dialog的相关监听事件

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/waley_yang/article/details/51514207

1.如果要监听用户点击的back事件,只要调用DialogInterface.OnKeyListener接口并实现它即可;

例:AlertDialog.Builder builder = new AlertDialog.Builder(MainActivity.this);
builder.setMessage("检测到新版本,请立即更新");
builder.setTitle("软件更新");
builder.setPositiveButton("更新", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
dialog.dismiss();
}
});
builder.setNegativeButton("取消", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
dialog.dismiss();
}
});

               //监听back事件
builder.setOnKeyListener(new DialogInterface.OnKeyListener() {
@Override
public boolean onKey(DialogInterface dialogInterface, int i, KeyEvent keyEvent) {
boolean click=false;
if(i==KeyEvent.KEYCODE_BACK){
click=true;
Log.e("sssss","back");
}
return click;
}
});

           //监听dialog取消事件
   builder.setOnCancelListener(new DialogInterface.OnCancelListener() {
@Override
public void onCancel(DialogInterface dialogInterface) {
Log.e("sssss","cancel");
}
});
builder.create().show();

猜你喜欢

转载自blog.csdn.net/waley_yang/article/details/51514207