Wieso stürzt eine Xcode Swift App bei Dezimalzahlen ab?
Ich habe eine kleine Test App entwickelt mit Xcode Swift, aber sobald ich eine Kommazahl eingebe und die Anwendung ausführe stürzt die App ab. In der Simulation klappt alles super, es kann also nicht am code liegen (denke ich). Woran könnte das liegen?
2 Antworten
Hab zwar von Xcode swift keine Ahnung aber vllt Punkt und Komma verwechselt? Im englischen ist Punkt und Komma bei Zahlen vertauscht. Also 1,234 = 1.234
Wie Alex schon sagt, ist es vermutlich ein Problem mit Punkt und Komma (ohne Code kann man das nicht genau sagen). Der Simulator ist auch standardmäßig auf Englisch eingestellt, dein iPhone sicherlich auf Deutsch. Deshalb wird es im Simulator klappen und auf dem iPhone nicht.
Testen kannst du es ja einfach, indem du mal jeweils im Simpulator und auf dem iPhone die Zahl mit Punkt und Komma eingibst. Auf dem Simulator funktioniert sicherlich der Punkt und auf dem iPhone das Komma.
Hier findest du ein Beispiel zum Parsen:
https://www.simpleswiftguide.com/how-to-convert-string-to-double-or-float-in-swift/
In deinem Code musst du also mit if let … oder guard let … den Wert parsen und im Fehlerfall zurückspringen oder einen Fehler ausgeben, damit deine App nicht abstürzt.
ist eine Möglichkeit, müsste ich mal ausprobieren. Aber sollte es dann nicht schon im Simulator meckern?