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

Android v13+如何通过代码调用系统自带汉堡图标?

Android 13+ 系统自带汉堡图标资源方案

核心结论

android.R.drawable中没有预定义的标准汉堡(抽屉菜单)图标,官方推荐使用Material Design组件库提供的系统级矢量图标,无需额外引入PNG或XML资源。

具体实现方案

  1. 引入Material组件库
    在模块级build.gradle(或build.gradle.kts)中添加依赖:

    implementation 'com.google.android.material:material:1.9.0' // 版本可按需选择
    
  2. 使用汉堡图标资源
    直接调用Material库中的ic_menu资源,替换代码中的占位符:

    ImageView icon = new ImageView(getContext());
    // 使用Material库的汉堡图标
    icon.setImageResource(com.google.android.material.R.drawable.ic_menu);
    
    // 可选:设置图标尺寸与颜色(适配Toolbar风格)
    Toolbar.LayoutParams params = new Toolbar.LayoutParams(
        dpToPx(getContext(), 24), 
        dpToPx(getContext(), 24)
    );
    params.setMarginStart(dpToPx(getContext(), 16));
    icon.setLayoutParams(params);
    icon.setColorFilter(ContextCompat.getColor(getContext(), android.R.color.white));
    
    toolbar.addView(icon);
    
  3. 辅助方法:DP转PX
    用于统一图标尺寸适配:

    private int dpToPx(Context context, int dp) {
        return (int) TypedValue.applyDimension(
            TypedValue.COMPLEX_UNIT_DIP,
            dp,
            context.getResources().getDisplayMetrics()
        );
    }
    

替代方案(无Material库依赖)

如果不想引入Material库,可使用系统中近似汉堡样式的图标(但样式可能不符合现代UI规范):

  • android.R.drawable.ic_menu_more:竖排三点图标,视觉上接近汉堡但非标准样式
  • android.R.drawable.ic_menu_sort_by_size:竖排线条图标,仅作为临时替代

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.20 03:59:56