我是Swift的新手,英语水平很差。但是,我正在尝试建立一种在我们公司中使用的无价之宝。
我希望用户输入一些数字,然后让他们知道价格。它包含很多变量,但我认为每个人的配置都一样。
假设我希望用户在UiTextField中输入金额,标签应显示1000 /金额,并带有两位小数。
我现在的代码是这个;
import UIKit
import Foundation
class ViewController: UIViewController {
@IBOutlet weak var svar: UILabel!
@IBOutlet weak var inpu2: UITextField!
override func viewDidLoad() {
super.viewDidLoad()
svar.text = ""
}
@IBAction func input(_ sender: Any) {
if let treStørrelse = Float(inpu2.text!) {
svar.text = "\(1000 / treStørrelse)"
}
}
}
这时我的输出显示为xx.xxxxxxxxxx 我希望它显示为xx.xx
我还需要在进一步的计算中使用答案。
答案 0 :(得分:0)
对于您来说,最简单,更安全的方法是使用NumberFormatter
对象:
lazy var numberFormatter: NumberFormatter = {
let nf = NumberFormatter()
nf.minimumFractionDigits = 2
nf.maximumFractionDigits = 2
return nf
}()
@IBAction func input(_ sender: Any) {
if let text = inpu2.text, let treStørrelse = Float(text) {
svar.text = numberFormatter.string(for: 1000 / treStørrelse)
}
}
此处,预期输出将四舍五入到第二个小数,并且它将始终显示2个小数。例如: