从 2 个不同的函数在 UILabel 中添加 2 个浮点值

Add 2 float values in UILabel from 2 difference functions

我是 Swift 的新手,我被这个简单的问题困住了,希望有人能提供帮助。

我正在尝试将浮点值分配给 2 UILabels deliveryCollectionLabel 和 adminFeeLabel 以及 2 个不同函数中的 if 逻辑,如下所示,然后在名为 totalCost 的第三个函数上,我正在尝试添加它们的值,但我出现错误:

Binary operator '+' cannot be applied to two '()' operands

第一个问题:下面是将 Float 值分配给标签 deliveryCollectionLabel 和 adminFeeLabel 的正确方法吗?

其次:将这两个函数的值添加到 Float 中的正确方法是什么,稍后将在代码中将其添加到另一个浮点值?

private func deliveryCharge() {
    if deliveryCollectionLabel.text! == "Delivery" {
        deliveryChargeLabel.text! = "2.50"
    } else {
        deliveryChargeLabel.text! = "0.00"
    }
}
private func adminFee () {
    adminFeeLabel.text! = "0.50"
}
private func totalCost() {
   var totalOrderCost = 0
    totalOrderCost = deliveryCharge() + adminFee()
}

将您的两个函数return设为浮点值,例如:

private func adminFee () - > Float{
    adminFeeLabel.text! = "0.50"
    return 0.5
}

目前您的函数将字符串分配给变量,但如果您想添加它们,它们还需要 return 一些东西,这就是错误所抱怨的。

你可以这样使用它。

private func getDeliveryCharge() -> Double {
    if deliveryCollectionLabel.text! == "Delivery" {
         return 2.50
    }
  return 0.0
}

private func getAdminFee() -> Double {
    return 0.50
}

private func getTotalCost() -> Double {
  return getDeliveryCharge() + getAdminFee()
}

[使用]:

deliveryChargeLabel.text = "\(getDeliveryCharge())"
adminFeeLabel.text = "\(getAdminFee())"
print("\(getTotalCost())")

希望对您有所帮助。