我正在尝试显示 AlertDialog,但在以下行中出现编译错误(不明确):
alertDialog.setButton(DialogInterface.BUTTON_POSITIVE, "OK", null);
我应该如何设置按钮?
我正在尝试显示 AlertDialog,但在以下行中出现编译错误(不明确):
alertDialog.setButton(DialogInterface.BUTTON_POSITIVE, "OK", null);
我应该如何设置按钮?
AlertDialog.Builder dlgAlert = new AlertDialog.Builder(this);
dlgAlert.setMessage(getResources().getString(R.string.err_connection));
dlgAlert.setTitle(getResources().getString(R.string.err_connection_header));
dlgAlert.setPositiveButton(getResources().getString(R.string.ok),
new DialogInterface.OnClickListener() {
public void onClick(final DialogInterface dialog, final int which) {
finish();
}
});
dlgAlert.setCancelable(true);
dlgAlert.create().show();
AlertDialog.Builder mAlertDialogBuilder = new AlertDialog.Builder(this.activity);
mAlertDialogBuilderTablet.setTitle("put your title here")
.setMessage("put your question here")
.setCancelable(false)
.setPositiveButton("Yes", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
Log.i(TAG,"clicked YES");
}
})
.setNegativeButton("No", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
Log.i(TAG,"clicked NO");
}
});
AlertDialog alertDialog = alertDialogBuilderTablet.create();
alertDialog.show();
基于此链接的 android 参考
http://developer.android.com/reference/android/app/AlertDialog.html ,
可以看到 setButton 有两种不同参数的方法
1)
public void setButton (int whichButton, CharSequence text, DialogInterface.OnClickListener listener)
和
2)
public void setButton (int whichButton, CharSequence text, Message msg)
所以编译器不知道你想要这些方法中的哪一个,因为你将 null 作为第三个参数传递,所以它会引发一个模棱两可的编译器错误。
如果您希望它为空,请尝试将其作为第三个参数传递:
(DialogInterface.OnClickListener) null
或者您可以使用 alertDialog 的专用方法 setPositiveButton() 和 setNegativeButton()。