我有一个NeutralButton应该导致我必须消失的AlertDialog框。这个问题是,当AlertDialog框出现时,文本集看起来很好,但NeutralButton根本没有显示。我尝试将它作为正面和负面按钮,但没有区别。这是代码:
Button infoG1;
infoG1 = (Button) findViewById(R.id.iG1);
infoG1.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
AlertDialog.Builder info = new AlertDialog.Builder(game1.this);
info.setMessage("Text here");
info.show();
info.setNeutralButton("Ok", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
dialog.cancel();
}
});
}
});
我原本期望一个带有文本“Ok”的按钮出现在AlertDialogue框的底部,这会导致该框在用户按下后消失。
答案 0 :(得分:3)
您不应在setNeutralButton(...)
方法后致电show()
。你这样做,这是导致问题。
而不是:
dialog.show();
dialog.setNeutralButton(...);
这样做:
dialog.setNeutralButton(...);
dialog.show();
注意您应该将所有内容放在dialog.show()
之上。否则你会遇到问题。
答案 1 :(得分:0)
尝试
Button infoG1;
infoG1 = (Button) findViewById(R.id.iG1);
infoG1.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
AlertDialog.Builder info = new AlertDialog.Builder(game1.this);
info.setMessage("Text here");
info.setNeutralButton("Ok", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
dialog.cancel();
}
});
info.show();
}
});