我正在使用此警告对话框:
public void displayAlert()
{
new AlertDialog.Builder(getActivity()).setMessage(R.string.invitenotice)
.setTitle("Invite Notice")
.setCancelable(true)
.setNeutralButton(android.R.string.ok,
new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int whichButton){
finish();
}
})
.show();
}
我的问题是当我点击确定我不想使用finish();我只想解雇对话框。任何帮助表示赞赏。或者按下按钮时创建简单对话框的方法可能更简单?感谢大家。另外,问题是我得到4-6个对话框实例。所以我需要按4-6次才能消失。我把听众放在我的按钮的地方是:
findViewById(R.id.mainHelp).setOnTouchListener(new OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
displayAlert();
return false;
}});
onCreate()方法中的
答案 0 :(得分:4)
删除finish()默认操作是dismiss。所以不要在click()上放任何东西。
答案 1 :(得分:3)
只需将null设置为侦听器,对话框就会自动解除。
答案 2 :(得分:2)
您可以在dialog.dismiss();
方法中调用onClick
。
答案 3 :(得分:1)
以这种方式处理对话框的方案
@Override
public void onClick(DialogInterface dialog, int which)
{
// TODO Auto-generated method stub
switch (which)
{
case DialogInterface.BUTTON_NEUTRAL:
break;
}
}
单击“确定”对话框将自动关闭。
答案 4 :(得分:-1)
怎么样
AlertDialog alertDialog;
alertDialog = new AlertDialog.Builder(this).create();
alertDialog.setTitle("Error!");
alertDialog.setMessage("Test!");
alertDialog.show();
alertDialog.setButton(3,"Yes", new DialogInterface.OnClickListener(){
@Override
public void onClick(DialogInterface dialog, int which) {
finish();
}
});