不知道如何打开uilabel可选项来计算我的uilabels

时间:2018-06-12 18:30:45

标签: swift

我是开发人员世界的新手,并且自2月份开始使用swift和Xcode。我希望有人可以帮助我。我试图制作一个简单的小费计算器,但似乎不能将两个uilabels放在一起。这就是我到目前为止...在total.text ="(totalAmount)*(tipPercent)" ...谢谢任何帮助都会很棒。 :)

@IBOutlet weak var totalAmount: UILabel!
@IBOutlet weak var textFIeld: UITextField!
@IBOutlet weak var tipPercent: UILabel!
@IBOutlet weak var slider: UISlider!
@IBOutlet weak var total: UILabel!
@IBOutlet weak var tip: UILabel!


@IBAction func sliderChanged(_ sender: UISlider) {
    sldr()

    total.text = "\(totalAmount) * \(tipPercent)"
}


@IBAction func buttonPressed(_ sender: Any) {
    ttl()
}

func ttl() {
    if let grandTotal = textFIeld.text {
        totalAmount.text! = "\(grandTotal)"
    }
}

func sldr() {
    tipPercent.text! = "\(Int(slider.value))"
}

1 个答案:

答案 0 :(得分:0)

下面的表达式只返回一个字符串,没有你期望的任何乘法。

total.text = "\(totalAmount) * \(tipPercent)"

您知道如何在ttl中完成解包文本。你应该在这里使用相同的方法

if let totalTxt = totalAmount.text, let percentTxt = tipPercent.text {
      //Then change to whatever scalar type you want
      if let totalAmount = Float(totalTxt), let percent = Float(percentTxt) {
          let totalBill = totalAmount * percent
          total.text = "\(totalBill)"
      }
 }