gpt4 book ai didi

swift - 总共标签点击两个按钮

转载 作者:行者123 更新时间:2023-11-30 12:00:27 25 4
gpt4 key购买 nike

我有两个 UIButton,如果我单击 button1,则 label1 的值为 250,如果我再次单击 button1 label1 的值应为 0。相同的逻辑适用于我的 button2label2。我想将 label1label2 的添加存储到 label3 中。 。我的代码是:

func PickUpCarCost() {
if (!isclick){
imgCheck.image = UIImage(named: "check.png")
isclick=true

//Pickup fare conver into integer

let PickUp = String(self.PickUpPrice)
PickUpFare.text = PickUp
self.pickCost = Int( PickUpFare.text!)
self.PAyAmount = ((self.PayFareWithSecurity)+(self.pickCost))
print("PaybleAmount: \(self.PAyAmount)")
self.AmountPay1 = ((self.PAyAmount)+(self.DeliverCost))
PaybleAmount.text=String(self.AmountPay1!)

}
else
{
imgCheck.image = UIImage(named: "uncheck.png")
PickUpFare.text = "0"
self.PickUpElse=Int(PickUpFare.text!)
print("PickUpElse: \(self.PickUpElse)")
self.PAyAmount = (self.PayFareWithSecurity)+(self.PickUpElse)
PaybleAmount.text=String(self.PAyAmount!)
isclick=false
}
}


func CarDeliverCost() {
if (!isclick){
imgUnCheck.image = UIImage(named: "check.png")
isclick=true
let DeliverPrice = String(self.deliveryPrice)
DeliverFare.text = DeliverPrice
self.DeliverCost = Int(DeliverFare.text!)

self.PAyAmount = ((self.PayFareWithSecurity)+(self.DeliverCost))

print("PaybleAmount: \(self.PAyAmount)")

PaybleAmount.text=String(self.PAyAmount!)

}
else
{
imgUnCheck.image = UIImage(named: "uncheck.png")
let deliveryelse = String(0)
DeliverFare.text = deliveryelse
self.deliver = Int(DeliverFare.text!)
PaybleAmount.text=String(self.PAyAmount!)
isclick=false

}
}

最佳答案

您面临的第一个问题是您在两种不同的场景中使用相同的 boolean 值 isClick。您的逻辑是,用户可以决定单击两个按钮或单个按钮。因此,如果我单击第一个按钮,那么您的标志就会打开,因为第二个按钮也使用相同的 boolean 值,那么您将自动获得取消选中的行为。

Thus you should use two different booleans such as hasPressOntoFirstButton and hasPressOntoSecondButton, where both set to false at the beginning, and each variable is used in their respective scene.

您提到要将label1添加到label2,更简单的方法是添加设置这些标签的变量。即

let label1 = UILabel()
let label2 = UILabel()
let label3 = UILabel()

let data1: Double = 83.0
let data2: Double = 82.0

var total: Double { // have a computed variable to adds automatically
return data1 + data2
}

label1.text = "\(data1)"
label2.text = "\(data2)"
label3.text = "\(data1 + data2)" // or "\(total)"

备注:

(1) 您的命名约定确实具有误导性,您应该将 UI 对象 命名与数据分开。即您可以使用 deliveryFareLabel.text 而不是 DeliverFare.text

(2) 避免使用 !,使用 nil coalescing ??if letguard 语句解包所有可选内容

关于swift - 总共标签点击两个按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47304643/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com