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

如何将Figma导出的JSON颜色设计令牌转换为Android Studio XML文件

将Figma JSON颜色设计令牌转换为Android XML文件

方法1:手动转换(适合颜色数量少的场景)

  1. 打开你的JSON颜色文件,提取所有颜色的名称和十六进制值。比如常见的JSON结构:
    {
      "primary": "#FF6200EE",
      "secondary": "#03DAC6",
      "error": "#B00020"
    }
    
  2. 在Android Studio中,打开项目的res/values/目录,新建或编辑colors.xml文件。
  3. 按照Android资源格式逐个添加颜色项:
    <?xml version="1.0" encoding="utf-8"?>
    <resources>
        <color name="primary">#FF6200EE</color>
        <color name="secondary">#03DAC6</color>
        <color name="error">#B00020</color>
    </resources>
    
    注意:资源名称必须符合Android命名规则——只能用小写字母、数字和下划线,不能以数字开头。如果JSON里的名称是驼峰式(比如primaryDark),要转成下划线式(primary_dark)。

方法2:Python脚本自动转换(适合大量颜色的场景)

如果颜色数量多,手动转换效率低,可以用简单脚本批量处理:

  1. 创建Python文件(比如json_to_colors_xml.py),粘贴以下代码:
    import json
    import re
    
    # 读取JSON文件
    with open('colors.json', 'r') as f:
        color_data = json.load(f)
    
    # 处理颜色名称,适配Android资源命名规则
    def sanitize_name(name):
        # 驼峰转下划线
        name = re.sub(r'(?<!^)(?=[A-Z])', '_', name).lower()
        # 替换非法字符为下划线
        return re.sub(r'[^a-z0-9_]', '_', name)
    
    # 构建XML内容
    xml_content = '<?xml version="1.0" encoding="utf-8"?>\n<resources>\n'
    for color_name, color_value in color_data.items():
        # 6位RGB格式自动添加不透明alpha前缀(FF)
        if len(color_value) == 7 and color_value.startswith('#'):
            color_value = f"#FF{color_value[1:]}"
        sanitized_name = sanitize_name(color_name)
        xml_content += f'    <color name="{sanitized_name}">{color_value}</color>\n'
    xml_content += '</resources>'
    
    # 写入XML文件
    with open('colors.xml', 'w') as f:
        f.write(xml_content)
    
  2. 将你的JSON颜色文件命名为colors.json,和脚本放在同一目录。
  3. 运行脚本:python json_to_colors_xml.py,生成对应的colors.xml文件后,复制到Android项目的res/values/目录即可。
    如果JSON结构嵌套较深(比如{"colors": {"primary": {"value": "#FF6200EE"}}}),需要调整脚本中的数据提取逻辑,比如添加color_data = color_data.get('colors', {})后再遍历子项的value字段。

方法3:使用Android Studio插件

借助专门的设计令牌插件一键转换:

  • 在Android Studio插件市场搜索Design Tokens或Token Studio,安装后重启IDE。
  • 导入你的JSON设计令牌文件,插件会自动生成符合Android规范的colors.xml,还能同步尺寸、字体等其他类型的设计令牌。

注意事项

  • 确保JSON中的颜色值是标准十六进制格式(#RRGGBB或#AARRGGBB),如果是RGB函数、HSL等格式,需要先转换为十六进制。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.08 08:21:34