将字符串转换为double类型会产生0.0而不是假定值

问题描述 投票:0回答:1

我正在尝试使用Xcode将字符串转换为double类型。我已经尝试过一些在堆栈上看到的方法,但是结果没有正确显示出来。

example

在上图中,我试图对标签价格加收10%的税。在这个例子中是35美元。因此,$ 3.50的税金总计为$ 38.50。我使用的代码允许我获得两倍的税,但它只设置为0.0,而不是应该增加的值。

  var moneyLabel: UILabel = {
         let label = UILabel()
         label.text = "$"
         label.font = UIFont.systemFont(ofSize: 20)
         label.numberOfLines = 0
         return label
     }()

 func configureButtonToSetPrice() {
    let priceString = "$\(moneyLabel)"
    let myFloat = (priceString as NSString).doubleValue
    let withTax = "\(myFloat * 0.10 + myFloat)"
    Pay.setTitle("Total Cost \(withTax)", for: .normal)
}
ios string xcode double uilabel
1个回答
0
投票

将$添加到priceString是问题。因此,转换失败,并返回0.0。这是工作代码。

func configureButtonToSetPrice() {
    var moneyLabel: String = "35"
    let myFloat = (moneyLabel as NSString).doubleValue
    let withTax = "\(myFloat * 0.10 + myFloat)"
    print("Total Cost $\(withTax)")
}

希望这会有所帮助。

© www.soinside.com 2019 - 2024. All rights reserved.