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

如何为Android汉堡菜单和溢出菜单图标设置屏幕阅读器可识别的无障碍标签

该需求完全支持XML静态配置和代码动态设置两种实现方式,具体操作如下:

汉堡菜单(导航图标)标签设置

XML配置方式

直接在Toolbar的XML标签中添加android:navigationContentDescription属性,属性值可以引用字符串资源或直接填写描述文本:

<androidx.appcompat.widget.Toolbar
    android:id="@+id/toolbar"
    <!-- 原有属性保持不变 -->
    android:navigationContentDescription="@string/desc_open_side_menu"
    >
    <!-- 内部原有子View保持不变 -->
</androidx.appcompat.widget.Toolbar>

代码动态设置方式

在页面逻辑中拿到Toolbar实例后调用对应方法即可,支持随时修改描述内容:

// Kotlin示例
// 引用字符串资源
toolbar.setNavigationContentDescription(R.string.desc_open_side_menu)
// 直接传入字符串
toolbar.navigationContentDescription = "打开侧边菜单"
// Java示例
toolbar.setNavigationContentDescription(R.string.desc_open_side_menu);
toolbar.setNavigationContentDescription("打开侧边菜单");

溢出菜单图标标签设置

XML配置方式

在Toolbar的XML标签中添加app:overflowContentDescription属性即可,该属性由AppCompat库提供,可兼容低版本Android系统:

<androidx.appcompat.widget.Toolbar
    android:id="@+id/toolbar"
    <!-- 原有属性保持不变 -->
    app:overflowContentDescription="@string/desc_more_options"
    >
    <!-- 内部原有子View保持不变 -->
</androidx.appcompat.widget.Toolbar>

代码动态设置方式

调用Toolbar提供的溢出菜单描述设置方法即可:

// Kotlin示例
toolbar.setOverflowContentDescription(R.string.desc_more_options)
toolbar.overflowContentDescription = "更多选项"
// Java示例
toolbar.setOverflowContentDescription(R.string.desc_more_options);
toolbar.setOverflowContentDescription("更多选项");

内容的提问来源于stack exchange,提问作者Hector

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.30 20:15:06