【发布时间】:2018-07-05 17:57:33
【问题描述】:
我有一个函数 NSNumberFormatter:
@objc func doneClicked() {
view.endEditing(true)
let formatter = NumberFormatter()
formatter.locale = Locale.current
formatter.numberStyle = .decimal
formatter.minimumSignificantDigits = 6
if let text = textField.text, let number = formatter.number(from: text) {
year = number.doubleValue
mounthresult = year * 12
mounthLabel.text = formatter.string(from: NSDecimalNumber(value: year).multiplying(by: 12))
}
}
我需要在另一个ViewController 中处理到Label 的数据传输。
制作prepare forSegue func:
override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
if segue.identifier == "yearmounth" {
let mounthController = segue.destination as! MounthsViewController
mounthController.mounth = mounthresult
}
在这种情况下,传输的 var 没有格式化。并且节目没有本地化。
mounthresult = formatter.number(from: mounthLabel.text!) as! Double
这种情况也没有提供任何东西...它已传输但没有格式化程序显示。
我还尝试将NumberFormatter 插入另一个控制器的ViewDidLoad。但在这种情况下,NumberFormatter 不会加载到 ViewDidLoad...
谁知道解决方法?
【问题讨论】:
-
如果要传输格式化的数字,为什么不传输格式化的数字(字符串)而不是数字
标签: ios swift variables segue number-formatting