Android AlertDialog自定义图标显示为白色的问题求助
AlertDialog图标显示为白色的问题求助
我在为所在IT部门开发一款日常任务上报的Android内部应用,界面主打易用性和信息丰富度。开发中使用AlertDialog与用户交互,用来展示信息、警告和错误内容,但设置AlertDialog图标时遇到了问题:图标虽然能正常显示,但呈现为纯白色,而我预期的是带有蓝色背景的样式。
我曾猜测是Android 12要求必须使用Vector Drawable,因为使用ic_launcher_foreground时图标显示正常,但后续验证发现并非这个原因。我查阅了相关文档和技术帖子,始终没找到对应的解决方案。
构建AlertDialog的Java代码
private void showGpsDialog(){ final String dialog_title = getResources().getString(R.string.dialog_important_title); final String dialog_message = getResources().getString(R.string.gps_disabled_dialog_message); final String dialog_positive = getResources().getString(R.string.dialog_understood); AlertDialog.Builder builder = new AlertDialog.Builder(this, R.style.AlertDialogRegular); builder.setMessage(dialog_message) .setPositiveButton(dialog_positive, (dialogInterface, i) -> { }) .setTitle(dialog_title) .setIcon(R.drawable.ic_info_drawable); AlertDialog dialog = builder.create(); dialog.show(); }
Drawable图标XML代码
<?xml version="1.0" encoding="utf-8"?> <layer-list xmlns:android="http://schemas.android.com/apk/res/android" android:opacity="opaque"> <item android:width="15dp" android:height="15dp" android:gravity="center" > <bitmap android:src="@drawable/info_icon"/> </item> </layer-list>
内容的提问来源于stack exchange,提问作者EddyMexico
相关产品推荐
相关产品推荐

