Boooaaaaar !!! J'espère que tout le monde peut m'aider? Comment puis-je arrondir le résultat à 2 décimales et l'afficher sur l'étiquette du résultat? J'ai trouvé quelques déclarations, mais je suis nouveau sur Swift et il m'est difficile de reconstruire les échantillons pour mon projet.
import UIKit
class ViewController: UIViewController {
@IBOutlet var txt: UITextField!
@IBOutlet var l5: UILabel!
@IBOutlet var l10: UILabel!
@IBOutlet var l15: UILabel!
@IBOutlet var l20: UILabel!
@IBOutlet var l25: UILabel!
@IBOutlet var l30: UILabel!
@IBOutlet var l35: UILabel!
@IBOutlet var l40: UILabel!
@IBAction func Berechnen(sender: AnyObject) {
var Zahl = (txt.text as NSString).floatValue
l5.text = "\((Zahl / 95) * (100))"
l10.text = "\((Zahl / 90) * (100))"
l15.text = "\((Zahl / 85) * (100))"
l20.text = "\((Zahl / 80) * (100))"
l25.text = "\((Zahl / 75) * (100))"
l30.text = "\((Zahl / 70) * (100))"
l35.text = "\((Zahl / 65) * (100))"
l40.text = "\((Zahl / 60) * (100))"
}
func textFieldShouldReturn(textField: UITextField) -> Bool {
self.view.endEditing(true)
return false
}
}
Vous pouvez utiliser la norme spécificateurs de format de chaîne pour arrondir à un nombre arbitraire de décimales. Plus précisément %.nf
où n
est le nombre de décimales dont vous avez besoin:
let twoDecimalPlaces = String(format: "%.2f", 10.426123)
En supposant que vous souhaitiez afficher le numéro sur chacun des l*
Étiquettes:
@IBAction func Berechnen(sender: AnyObject) {
var Zahl = (txt.text as NSString).floatValue
l5.text = String(format: "%.2f", (Zahl / 95) * 100)
l10.text = String(format: "%.2f", (Zahl / 90) * 100)
l15.text = String(format: "%.2f", (Zahl / 85) * 100)
l20.text = String(format: "%.2f", (Zahl / 80) * 100)
l25.text = String(format: "%.2f", (Zahl / 75) * 100)
l30.text = String(format: "%.2f", (Zahl / 70) * 100)
l35.text = String(format: "%.2f", (Zahl / 65) * 100)
l40.text = String(format: "%.2f", (Zahl / 60) * 100)
}