ユーザーが、彼は自動的にスペースで区切られることになる数字を入力したときにように、私はどのように私は私の電卓自動的に(スウィフト)の桁区切りを追加
のコードを行うことができますか?
私は長い時間のための答えを見つけるためにしようとしてきたが、何もそれがその後何が起こった すぐvar currentInput: Double {
get {
return Double (displayResultLabel.text!)!
}
set {
let value = "\(newValue)"
let ValueArray = (value.components(separatedBy:"."))
if ValueArray[1] == "0" {
displayResultLabel.text = "\(ValueArray[0])"
} else {
displayResultLabel.text = "\(newValue)"
}
stillTyping = false
}
}
@IBAction func numberPressed(_ sender: UIButton) {
let number = sender.currentTitle!
if stillTyping {
if (displayResultLabel.text?.characters.count)! < 14 {
displayResultLabel.text = displayResultLabel.text! + number
}
} else {
displayResultLabel.text = number
stillTyping = true
}
}
を表示したことが収まりません
:
@IBAction func numberPressed(_ sender: UIButton) {
let number = sender.currentTitle!
if stillTyping {
if (displayResultLabel.text?.characters.count)! < 14 {
let formatter = NumberFormatter()
formatter.numberStyle = .decimal
let newNumber = NSNumber(value: Double(displayResultLabel.text! + number)!)
displayResultLabel.text = formatter.string(from: newNumber)
}
} else {
displayResultLabel.text = number
stillTyping = true
}
}
var stillTyping = false
var dotIsPlaced = false
var firstOperand: Double = 0
var secondOperand: Double = 0
var operationSign: String = ""
エラーが表示されます - インスタンスメンバーのnumberStyle」タイプでは使用できません「NumberFormatterは」そのことについて – B2Fq
申し訳ありません。私は実際にそれをインスタンス化するために括弧を忘れていました:P私のマシン上で同様の例がコンパイルされました –
8888(888に変更)を入力した後にエラーが発生しました - "スレッド1:致命的なエラー:オプション " – B2Fq