ios - Swift 编程 - 如何设置轮流应用程序

标签 ios swift button

所以我正在尝试编写一个应用程序,让我和一个 friend 能够跟踪飞镖游戏。游戏中有几个不同的按钮,允许用户在用户得分中添加或减去一两个。我有按钮并创建了导出,但只是遇到了一个问题:我如何告诉按钮他们应该给哪个用户评分。我附上了基本用户界面的图片和我正在使用的一些代码。任何建议都将非常感激。我只需要知道如何告诉应用程序用户轮到哪个轮,我在想是否可以添加一个按钮,上面写着“下一轮”,然后按下按钮来反射(reflect)玩家的分数,然后按“下一回合”,它会切换玩家。因此得分将影响下一个玩家回合。这在纸面上对我来说是有意义的,但我真的不知道从哪里开始让它发挥作用。您是否介意看一下我必须使标签反射(reflect)分数变化的代码,并看看该逻辑是否有意义?

import UIKit

class ViewController: UIViewController {


@IBOutlet weak var user1Score: UILabel!

@IBOutlet weak var user2Score: UILabel!

@IBAction func hit(sender: AnyObject) {

     user1Score.text = "+1"

}

@IBAction func miss(sender: AnyObject) {
}

@IBAction func doublePlus(sender: AnyObject) {
}

@IBAction func doubleMinus(sender: AnyObject) {
}

@IBAction func triplePlus(sender: AnyObject) {
}

@IBAction func tripleMinus(sender: AnyObject) {
}

@IBAction func penalty(sender: AnyObject) {
}

这是mainStoryBoardUI的图像

enter image description here

最佳答案

使用类属性来跟踪当前玩家。将分数存储在数组中,并使用 currentPlayer 作为要更新的值的索引。这是一个非常基本的方法:

class ViewController: UIViewController {
    @IBOutlet weak var currentName: UILabel!
    @IBOutlet weak var user1Score: UILabel!
    @IBOutlet weak var user2Score: UILabel!

    var names = ["Fred", "Joe"]
    var currentPlayer = 0
    var scores = [0, 0]

    func updateUI() {
        currentName.text = names[currentPlayer]
        user1Score.text = "\(scores[0])"
        user2Score.text = "\(scores[1])"
    }

    @IBAction func changePlayers() {
        currentPlayer = 1 - currentPlayer
        updateUI()
    }

    @IBAction func hit() {
        scores[currentPlayer]++
        updateUI()    
    }
}    

关于ios - Swift 编程 - 如何设置轮流应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32038889/

相关文章:

ruby-on-rails - 使用 link_to 在 Ruby on Rails 中设置持久性 cookie

ios - iOS 项目的单元测试

ios - 无法使用来自 Firebase 数据库的数据填充数组

ios - 在 Xcode 中的 .Swift 文件之间传递数据

ios - 如何在新版本上转换 NSKeyedArchiver 对象

ios - swift 位置管理器

javascript - 当第二次点击按钮时做某事

ios - 如何创建带参数的枚举?

ios - 如何在 swift 字符串中一起写斜杠和引号(例如\")?

asp.net - 是否可以替换asp :button with a HTML element