JadLu:
私はandroidXに私のプロジェクトを移行した、と私は、ユーザーからの正と負のフィードバックと警告ダイアログを実装したいです。
私はこのコードを使用しています:
AlertDialog.Builder builder1 = new AlertDialog.Builder(getApplicationContext());
builder1.setMessage("Write your message here.");
builder1.setCancelable(true);
builder1.setPositiveButton(
"Yes",
new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int id) {
Log.d("MSG", "onClick: YES");
}
});
builder1.setNegativeButton(
"No",
new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int id) {
dialog.cancel();
Log.d("MSG", "onClick: No");
}
});
AlertDialog alert11 = builder1.create();
alert11.show();
しかし、私は、アプリを実行している、このエラーが表示されます。
java.lang.IllegalStateException:あなたはこの活動でTheme.AppCompatのテーマ(または子孫)を使用する必要があります。
ガブリエレMariotti:
あなたは使用することができますMaterialAlertDialogBuilder
が提供するマテリアルコンポーネントライブラリ。
ただ、使用:
new MaterialAlertDialogBuilder(MainActivity.this,
.setTitle("Dialog")
.setMessage("Write your message here. ....")
.setPositiveButton("Ok", /* listener = */ null)
.setNegativeButton("Cancel", /* listener = */ null)
.show();
MaterialAlertDialogBuilder
素材のテーマを必要とになりますandroidx.appcompat.app.AlertDialog
。