You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

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

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.05 19:40:57