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

Flutter Flag包显示英国地区旗帜报错,如何获取英格兰旗帜?

解决Flutter Flag包无法展示英国地区旗帜的问题

你遇到的问题根源在于Flag包默认仅支持ISO 3166-1标准的两位国家代码(比如gb代表英国),而gb-eng、gb-wls这类属于英国内部的地区细分代码,不在包的默认支持范围内,所以会触发你设置的替代组件。

给你两个可行的解决办法:

  • 自定义本地旗帜资源
    直接下载英格兰、威尔士、苏格兰或北爱尔兰的旗帜图片,放到项目的assets目录并在pubspec.yaml中配置资源路径,然后用Flutter原生的Image组件展示,示例代码:

    Image.asset(
      'assets/flags/gb-eng.png',
      height: 18,
      width: 18,
      fit: BoxFit.fitWidth,
      errorBuilder: (context, error, stackTrace) => Container(
        height: 18,
        width: 18,
        decoration: BoxDecoration(
          image: DecorationImage(
            image: AssetImage(replacementFlag),
            fit: BoxFit.contain,
          ),
        ),
      ),
    )
    
  • 检查包版本或支持范围
    查看Flag包的最新文档,确认是否新增了地区代码的支持;如果当前使用的版本较旧,尝试升级到最新版后,再测试gb-eng这类代码是否能正常加载。

如果以上方法都无效,自定义本地资源是最稳妥的方案——毕竟地区旗帜不属于标准国家代码范畴,多数旗帜类包不会默认包含这类资源。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.31 10:41:31