我已将我的项目迁移到 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 主题(或后代)。
1 回答
小唯快跑啊
TA贡献1863条经验 获得超2个赞
您可以使用Material Components 库MaterialAlertDialogBuilder
提供的。
只需使用:
new MaterialAlertDialogBuilder(context)
.setTitle("Dialog")
.setMessage("Write your message here. ....")
.setPositiveButton("Ok", /* listener = */ null)
.setNegativeButton("Cancel", /* listener = */ null)
.show();
需要MaterialAlertDialogBuilder一个 Material 主题并将生成一个androidx.appcompat.app.AlertDialog.
添加回答
举报
0/150
提交
取消