我创建了一个国家货币及其 ISO 代码的大列表。
例子:
"USD" - "United States"
"EUR" - "Euro"
"JPY" - "Yen"
Run Code Online (Sandbox Code Playgroud)
用户选择他们的自定义货币并将其存储在 UserDefaults 中。
在我的数字格式化程序中,如何通过传入 iso 代码来显示货币?
我有类似的东西,但它似乎无法正常工作。
let formatter = NumberFormatter()
let locale = Locale.availableIdentifiers.map { Locale(identifier: $0) }.first { $0.currencyCode == "EUR" }
// Instead of EUR I would display the user defaults. Testing Purposes Only.
formatter.numberStyle = .currency
formatter.locale = locale as Locale
formatter.maximumFractionDigits = 2
$0.formatter = formatter
Run Code Online (Sandbox Code Playgroud)