所以我正在开发一个应用程序,并且每次按下按钮时我都试图让UILabel增加一定量。这就是我所拥有的:
对象:
class NewsArticle: NSObject{
static var counter: Int = 10
}
标签:
@IBOutlet weak var tokenCounter: UILabel!
按钮:
@IBAction func tenTokens(sender: AnyObject) {
var alert = UIAlertController(title: "Do you want to purchase 10 Tokens?", message: "", preferredStyle: UIAlertControllerStyle.Alert)
alert.addAction(UIAlertAction(title: "Cancel", style: UIAlertActionStyle.Default, handler: nil))
alert.addAction(UIAlertAction(title: "Yes!", style:UIAlertActionStyle.Default, handler:{(alert: UIAlertAction!) in self.tokenCounter.text = (++NewsArticle.counter).description}))
self.presentViewController(alert, animated: true, completion: nil)
//self.tokenCounter.text = (NewsArticle.counter).description
}
此功能现在只将计数器增加1.每次我尝试更改'(++ NewsArticle.counter)。描述' to'(NewsArticle.counter + 10)。描述'它只是暂时改变IBOutlet的值。如果我单击一个只有++的不同按钮(类似名为oneToken),那么它将更改标签。
示例序列:
标签= 10
点击按钮'十个代币。'
标签= 20
点击按钮' One Token'
标签= 11
点击按钮' Ten Tokens'
标签= 21
答案 0 :(得分:2)
@IBAction func tenTokens(sender: AnyObject) {
var alert = UIAlertController(title: "Do you want to purchase 10 Tokens?", message: "", preferredStyle: UIAlertControllerStyle.Alert)
alert.addAction(UIAlertAction(title: "Cancel", style: UIAlertActionStyle.Default, handler: nil))
alert.addAction(UIAlertAction(title: "Yes!", style:UIAlertActionStyle.Default, handler:{(alert: UIAlertAction!) in
NewsArticle.counter = NewsArticle.counter + 10
self.tokenCounter.text = (NewsArticle.counter).description
}))
self.presentViewController(alert, animated: true, completion: nil)
//self.tokenCounter.text = (NewsArticle.counter).description
}
您应该按NewsArticle.counter = NewsArticle.counter + 10
我只想补充答案:
++运算符将使用一个增加NewArticle变量并返回该值。 +运算符不会增加NewArticle值,只会返回附加值,因此NewArticle变量将保持不变,从而导致问题。
答案 1 :(得分:0)
对文辰黄的回答只是一个微小的改进。
而不是写
NewsArticle = NewsArticle + 10
你可以写
NewsArticle += 10
得到相同的结果。
可能只是风格/品味的问题我想