1
var displayValue: Double {
get {
return Double(display.text!)!
}
set {
display.text = formatCurrency(value: newValue)
}
}
func formatCurrency(value: Double) -> String {
let formatter = NumberFormatter()
formatter.numberStyle = .decimal
formatter.alwaysShowsDecimalSeparator = false
formatter.decimalSeparator = ","
formatter.maximumFractionDigits = 2;
formatter.locale = Locale(identifier: Locale.current.identifier)
let result = formatter.string(from: value as NSNumber);
return result!;
}
private var brain = CalculatorBrain()
@IBAction func touchDigit(_ sender: UIButton) {
let digit = sender.currentTitle!
if userIsInTheMiddleOfTyping {
let textCurrentlyInDisplay = display.text!
display.text = textCurrentlyInDisplay + digit
} else {
display.text = digit
userIsInTheMiddleOfTyping = true
}
}
每当我触摸我的按钮,标签不会被更新。 我想使“显示标签”好看,所以我使用的NumberFormatter和我设置如何格式化我的号码?
我已经试过这
let result = String(displayValue) + formatter.string(from: value as NSNumber)!;
我formatCurreny功能
,但行为对我的格式属性我的应用程序不允许我按+, - (或操作键)