- 已关闭。**此问题为not reproducible or was caused by typos。当前不接受答案。
这个问题是由打字错误或无法再重现的问题引起的。虽然类似的问题在这里可能是on-topic,但这个问题的解决方式不太可能帮助未来的读者。
13小时前关门了。
Improve this question
如何创建一个函数,随着+/-按钮的增加,产品的总成本会增加?我写了这样的代码,但不算数
@IBOutlet weak var counterlbl: UILabel! // Counter label
@IBOutlet var costLbl: UILabel! // Price label
var counter = 1 //Counter which contains the value to increment or decrement(+/-)
let minusTap = UITapGestureRecognizer(target: self, action: #selector(minusImageTapped))
minusBtn.addGestureRecognizer(minusTap)
minusBtn.isUserInteractionEnabled = true
//custom UIstepper I used images
let plusTap = UITapGestureRecognizer(target: self, action: #selector(plusImageTapped))
plusBtn.addGestureRecognizer(plusTap)
plusBtn.isUserInteractionEnabled = true
//decrement
@objc func minusImageTapped () {
let price = costLbl.text
var priceInt = Int(price!)
if counter > 1{
counter -= 1
let totalPrice = priceInt! / counter
counterlbl.text = String(counter)
costLbl.text = String(totalPrice)
print("minus")
}
}
//increment
@objc func plusImageTapped() {
let price = costLbl.text
var priceInt = Int(price!)
counter += 1
let totalPrice = priceInt! * counter
counterlbl.text = String(counter)
costLbl.text = String(totalPrice)
print("Plus")
}
1条答案
按热度按时间fzsnzjdm1#
您每次都在更改*每项成本***...
假设您从
counter = 1
开始,并且costLbl
的文本为“5”。点击plus**图像,代码将执行以下操作:
然后设置
costLbl.text = "10"
所以,下次你点“加”的时候...
并设置
costLbl.text = "30"
所以,下次你点“加”的时候...
并设置
costLbl.text = "120"
等等。
您需要一个*每项成本*标签和一个*总价*标签。
然后,每次都从CostPerItem标签中获得相同的“Cost per Item”,并在TotalPrice标签中显示
priceInt * counter
的结果。有一件事可能会帮助您更快地弄清楚这一点,那就是将您的计算放在一个函数中...然后调用该函数(使用“递增”或“递减”指示符),这样您就不会对整个乘法或除法问题感到困惑。
看看这个: