gpt4 book ai didi

swift - 货币格式不起作用

转载 作者:行者123 更新时间:2023-11-30 10:22:01 30 4
gpt4 key购买 nike

我刚刚更新到 Xcode 6 的 GM,目前正在处理并修复问题。

我的代码的特定部分存在问题,我一直在努力修复。基本上我曾经有这样的代码:

override func viewDidLoad() {
currencyFormatter.numberStyle = NSNumberFormatterStyle.CurrencyStyle
currencyFormatter.currencyCode = NSLocale.currentLocale().displayNameForKey(NSLocaleCurrencySymbol, value: NSLocaleCurrencyCode)!
}

func textFieldDidChangeValue(textField: UITextField) {
//Automatic formatting for transaction value text field. Target is added above.
var text = textField.text.stringByReplacingOccurrencesOfString(currencyFormatter.currencySymbol, withString: "").stringByReplacingOccurrencesOfString(currencyFormatter.groupingSeparator, withString: "").stringByReplacingOccurrencesOfString(currencyFormatter.decimalSeparator, withString: "").stringByReplacingOccurrencesOfString(" ", withString: "") // There is a special character here. This line is critical for european/other currencies.
println(textField.text)

textField.text = currencyFormatter.stringFromNumber((text as NSString).doubleValue / 100.0)
currencyDouble = (text as NSString).doubleValue / 100.0
//println(currencyDouble)
valueEnter.alpha = 100
}

当我的应用程序崩溃时,我不得不将 viewDidLoad() 中的代码更改为:

let currencyFormatter = NSNumberFormatter()
currencyFormatter.numberStyle = NSNumberFormatterStyle.CurrencyStyle
if let currencyCode = NSLocale.currentLocale().objectForKey(NSLocaleCurrencySymbol) as? String {
currencyFormatter.currencyCode = currencyCode
println(currencyFormatter.currencyCode) //Will display "$", for example, if your locale is set to USD
}

应用程序不再崩溃,但格式不起作用。我尝试了一些方法,但无法弄清楚如何解决它。

最佳答案

您正在使用 NSLocaleCurrencySymbol 值设置 currencyCode。顾名思义,这是错误的值。正确的值是 NSLocaleCurrencyCode

关于swift - 货币格式不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25769374/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com