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

使用Fixer.io API获取货币符号对应描述与图标方法咨询

针对Fixer.io API + iOS应用的货币描述与图标解决方案

嘿,这个需求我刚好有实操经验,结合你提到的NSLocale和Fixer.io的场景,给你梳理两个核心功能的可行方案:

获取货币描述(比如EUR → Euro)

你考虑用iOS原生NSLocale的思路完全没问题,这是最省心且本地化友好的方案,不用额外依赖API返回的字段:

  • 原生NSLocale的displayName(forKey:value:)方法可以直接根据货币代码返回对应名称,还会自动适配用户的系统语言。举个Swift代码示例:
func getCurrencyDisplayName(from code: String) -> String? {
    return NSLocale.current.displayName(forKey: .currencyCode, value: code)
}
// 调用示例:getCurrencyDisplayName(from: "EUR") 会返回 "Euro"(中文系统下是"欧元")
  • 额外提一句:如果Fixer.io的API响应本身包含货币名称字段,你也可以直接用这个字段,好处是和API数据保持统一,但原生方案胜在本地化适配更灵活。

获取货币图标/符号

这里得分两种情况来看:

1. 获取货币符号(比如EUR → €)

同样可以用NSLocale实现,代码示例:

func getCurrencySymbol(from code: String) -> String? {
    let locale = NSLocale(localeIdentifier: code)
    return locale.object(forKey: .currencySymbol) as? String
}
// 调用示例:getCurrencySymbol(from: "EUR") 返回 "€"

2. 获取货币专属图标/国旗图标

Fixer.io本身没有提供这类资源,给你几个可行方向:

  • 用系统内置符号:iOS 16+的SF Symbols里包含部分货币相关符号,搜索"currency"就能找到,不过覆盖的货币种类有限。
  • 第三方图标库:比如Font Awesome这类图标字体,有专门的货币图标分类,集成后可以直接通过货币代码匹配对应图标。
  • 自定义映射表:把常用货币的图标(国旗或专属图标)放进项目资源里,维护一个[货币代码: 图标名称]的字典,根据代码直接取对应图标,适合需要精准控制图标样式的场景。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.15 08:03:49