使用Navigation Drawer Activity时菜单图标不显示,仅显示灰色方块求助
嘿,我之前也碰到过一模一样的情况!编辑界面里图标显示正常,一运行就变成灰色块,这其实是Android Navigation Drawer的默认图标着色机制在搞鬼——它会自动把所有菜单项的图标统一染成主题指定的颜色(通常是灰色),直接忽略图标原本的色彩。下面给你几个快速解决的办法:
方法1:关闭单个菜单项的图标着色
直接在对应的<item>标签里添加android:iconTint="@null",强制让图标显示原本的颜色:
<item android:id="@+id/nav_1" android:icon="@mipmap/ic_launcher" android:iconTint="@null" android:title="@string/settings_label" /> <item android:id="@+id/nav_2" android:icon="@mipmap/ic_launcher_wp" android:iconTint="@null" android:title="@string/..." />
方法2:将图标移至drawable目录
虽然mipmap目录主要用于存放应用启动图标,但Navigation Drawer对drawable目录下的图标兼容性更好。你可以把图标文件复制到res/drawable文件夹,然后修改引用路径:
<item android:id="@+id/nav_1" android:icon="@drawable/ic_launcher" android:title="@string/settings_label" />
方法3:检查图标格式与主题设置
- 确保你的图标是带透明背景的PNG格式,如果是SVG图标,要确认在Android Studio导入时没有损坏路径信息;
- 如果你在主题里设置了
drawerIconTint属性,它会全局影响所有抽屉图标颜色,你可以在主题里把该属性设为@null,或者用方法1的iconTint单独覆盖。
内容的提问来源于stack exchange,提问作者Elackya
相关产品推荐
相关产品推荐

