快速入门
我想每次按下“交易”按钮时从带有“ 26”的标签中减去1。我可以将其转换为Int吗?以及如何向其中添加计算?
我编码的cardsAmount.text =“ 25”有效,但是每次按下该按钮都需要减去1。
将来也要添加到该号码中。
谢谢!
类ViewController:UIViewController {
@IBOutlet weak var leftPile: UIImageView!
@IBOutlet weak var rightPile: UIImageView!
@IBOutlet weak var cardsAmount: UILabel!
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.
}
@IBAction func deal(_ sender: Any) {
let shuffled = (2...53).shuffled()
let leftNumber = shuffled[0]
let rightNumber = shuffled[1]
//cardsAmount.text = "25"
leftPile.image = UIImage(named: "c\(leftNumber)")
rightPile.image = UIImage(named: "c\(rightNumber)")
}
我认为您是初学者,应该添加variable
。使用这个:
var initialNumber: Int = 1
var number: Int = 26
@IBAction func deal(_ sender: Any) {
let shuffled = (2...53).shuffled()
let leftNumber = shuffled[0]
let rightNumber = shuffled[1]
number = number - initialNumber
cardsAmount.text = "\(number)" //This is to subtract. Now you can check if it is a negative number and perform operations ahead using if else
leftPile.image = UIImage(named: "c\(leftNumber)")
rightPile.image = UIImage(named: "c\(rightNumber)")
}
您可以采用相同的方法添加号码。如果要保存initialNumber
,则可以写入initialNumber = initialNumber + 1
,然后使用它。如果您对此答案有任何疑问,请告诉我。
您可以使用属性观察器。
var number: Int = 26 {
didSet {
if number > 0 {
self.cardsAmount.text = "\(number)"
}
}
}
@IBAction func deal(_ sender: Any) {
let shuffled = (2...53).shuffled()
let leftNumber = shuffled[0]
let rightNumber = shuffled[1]
number -= 1 // whenever number value changes, didSet (property observer) will be called
leftPile.image = UIImage(named: "c\(leftNumber)")
rightPile.image = UIImage(named: "c\(rightNumber)")
}