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

Xamarin C# Android 将Tabbed工具栏移至底部后图标消失如何解决

问题根因

Android平台原生底部导航栏默认会对图标应用统一色调过滤,Xamarin.Forms调用原生控件时继承了这个特性,未手动指定选中/未选中颜色时,系统默认着色会覆盖图标原有样式,导致显示为空白。

修复方案
  • 直接在现有TabbedPage的安卓平台特性声明中补充选中、未选中状态的颜色配置即可,完整的头部声明参考如下:
xmlns:android="clr-namespace:Xamarin.Forms.PlatformConfiguration.AndroidSpecific;assembly=Xamarin.Forms.Core"
android:TabbedPage.ToolbarPlacement="Bottom"
android:TabbedPage.BarItemColor="#888888"
android:TabbedPage.BarSelectedItemColor="#1677ff"

其中BarItemColor对应未选中标签的图标、文字颜色,BarSelectedItemColor对应选中状态的颜色,可根据你的设计需求自行修改色值。

  • 检查图标资源合规性:所有Tab图标优先存放在Android项目的Resources/drawable目录下,文件名仅允许包含小写字母、数字和下划线,不能出现大写字母、中文或特殊符号。如果使用矢量图标,需确保安卓项目已开启矢量图兼容支持。
  • 版本适配:如果配置后仍然显示空白,检查项目引用的Xamarin.Forms NuGet包版本,低于4.8的版本存在底部Tab图标渲染bug,升级到最新稳定版即可解决。
  • 若需要完全保留图标原有颜色,不使用系统统一着色,可在Android项目的Resources/values/styles.xml的主应用主题节点中添加以下配置:
<item name="tabIconTint">@null</item>

内容的提问来源于stack exchange,提问作者Jensar Joey Sayson

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.01 21:36:05