繁体   English   中英

使用Swift在XCode上单击按钮时,如何使分数上升1分

[英]How Can I Make the Score Go Up One Point When a Button is Clicked on XCode using Swift

对不起这个简单的问题,我对IOS开发还很陌生。 我想做的是使UILabel(设置为0)在每次按下按钮时都增加1。 这是在ViewController.swift上给定的默认代码,我为Label和Action创建了一个Outlet。

import UIKit

class ViewController: UIViewController {
@IBOutlet var score: UILabel!

@IBAction func button(sender: UIButton) {


}

override func viewDidLoad() {
    super.viewDidLoad()

}

override func didReceiveMemoryWarning() {
    super.didReceiveMemoryWarning()

}


}
CHANGE LABEL NAME TO BE MORE DESCRIPTIVE
CREATE SCORE VARIABLE AND START IT AT 0 SO YOU HAVE A SCORE TO PRESENT FROM THE START
MAKE IT BEAUTIFUL



import UIKit

class ViewController: UIViewController {
@IBOutlet var scoreLabel: UILabel!
private var score = 0

@IBAction func button(sender: UIButton) {
    score += 1
    scoreLabel.text = "\(score)"
}

override func viewDidLoad() {
    super.viewDidLoad()
        scoreLabel.text = "\(score)"
        scoreLabel.backgroundColor = UIColor.pinkColor()
}

override func didReceiveMemoryWarning() {
    super.didReceiveMemoryWarning()

}


}

您需要一个变量来计数。 var counter = 0这样的东西,然后在func按钮中,将counter +=1score.text = "\\(counter)" 我现在没有在Xcode上尝试过,但是据我所知应该可以

这可以是一种方法:

@IBOutlet weak var scoreLabel: UILabel!
@IBAction func updateScore(sender: AnyObject) {
    //Check if String can be parsed to integer
    if let score = NSNumberFormatter().numberFromString(scoreLabel.text!) {
        var myInt = score.integerValue
        myInt = myInt + 1
        scoreLabel.text = "\(myInt)"
    } else {
        scoreLabel.text = "0"
    }
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM