Hier ist der Code für meine UIButtonWie kann ich meinen Rechner einen Zeitraum in swift hinzufügen?
@IBAction private func performOperation(sender: UIButton) {
if userIsInTheMiddleOfTyping {
brain.setOperand(displayValue)
userIsInTheMiddleOfTyping = false
}
if let mathematicalSymbol = sender.currentTitle {
brain.performOperation(mathematicalSymbol)
}
displayValue = brain.result
}
Hier ist mein Modell oder Viewcontroller Code
private var operations: Dictionary<String,Operation> = [
"π": Operation.Constant(M_PI),
"e": Operation.Constant(M_E),
"√": Operation.UnaryOperation(sqrt),
"cos": Operation.UnaryOperation(cos),
"✕": Operation.BinaryOperation({ $0 * $1 }),
"÷": Operation.BinaryOperation({ $0/$1 }),
"+": Operation.BinaryOperation({ $0 + $1 }),
"−": Operation.BinaryOperation({ $0 - $1 }),
"±": Operation.UnaryOperation({ -$0 }),
"=": Operation.Equals,
".": Operation.Period
]
private enum Operation {
case Constant(Double)
case UnaryOperation((Double) -> Double)
case BinaryOperation((Double, Double) -> Double)
case Equals
case Period
}
func performOperation (symbol: String) {
if let operation = operations[symbol] {
switch operation {
case .Constant(let associatedConstantValue):
accumulator = associatedConstantValue
break
case .UnaryOperation(let associatedFunction):
accumulator = associatedFunction(accumulator)
break
case .BinaryOperation(let associatedFunction):
executePendingBinaryOperation()
pending = PendingBinaryOperationInfo(binaryFunction: associatedFunction, firstOperand: accumulator)
break
case .Equals:
executePendingBinaryOperation()
break
case .Period:
displayTextContainsPeriod()
break
}
}
}
private func displayTextContainsPeriod() -> Bool
{
}
Ich weiß, wenn eine vorhandene Zeit zu überprüfen existiert ich überprüfen müssen, wenn der String einen Teilstring enthält " . " aber ich bin nicht sicher, wie man den Anzeigetext in meinem func erhält displayTextContainsPeriod
Sie haben Ihren Kommentar unter der falschen Antwort gepostet. Das Gehirn sollte nicht an der Eingabe der Nummer beteiligt sein. Es ist nur zum Berechnen. Sie rufen das Gehirn nicht für jede eingegebene Ziffer an. Ebenso würden Sie das Gehirn nicht anrufen, wenn ein Dezimalpunkt eingegeben wird. Hängen Sie einfach das '.' Zeichen an die Anzeigezeichenfolge an, nachdem Sie sichergestellt haben, dass Sie noch keine haben. – vacawama