显示android if对话框
我有震动器,在震动动作中我想显示对话。我有一个问题,当执行多次震动时,会显示多个对话框。我想一次只显示一个对话框 所以我写了这段代码,但它显示了错误。一行需要“final AlertDialog”,另一行不需要“final” 编辑:谢谢,dialog.builder();看起来很有效。但现在我遇到了一个新问题——NullPointerException,出现在我检查警报对话框是否显示的行上。 现在我试着:显示android if对话框,android,android-alertdialog,final,Android,Android Alertdialog,Final,我有震动器,在震动动作中我想显示对话。我有一个问题,当执行多次震动时,会显示多个对话框。我想一次只显示一个对话框 所以我写了这段代码,但它显示了错误。一行需要“final AlertDialog”,另一行不需要“final” 编辑:谢谢,dialog.builder();看起来很有效。但现在我遇到了一个新问题——NullPointerException,出现在我检查警报对话框是否显示的行上。 现在我试着: if(builder.isShowing() == false) 固定NullPoint
if(builder.isShowing() == false)
固定NullPointerException
if(builder == null){
builder.setButton("OK", new DialogInterface.OnClickListener(){
public void onClick(DialogInterface dialog, int which){
dialog.dismiss();
builder = null;
}
}
将
builder.disease()
更改为dialog.disease()
删除builder.disease()编码>并将其替换为dialog.dismis()
,在侦听器上,您会得到一个对话框对象,该对象对应于触发事件的对话框将AlertDialog声明为活动中的一个字段,不需要将其设置为最终字段。尝试只创建一次对话框,这样您就可以检查对话框是否已创建,如果是,若它正在显示,我认为这对我来说是行不通的,因为若用户关闭第一个对话框并再次进行抖动,我想让另一个对话框可用。
if(builder == null){
builder.setButton("OK", new DialogInterface.OnClickListener(){
public void onClick(DialogInterface dialog, int which){
dialog.dismiss();
builder = null;
}
}