gpt4 book ai didi

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

转载 作者:行者123 更新时间:2023-11-30 14:08:34 27 4
gpt4 key购买 nike

所以我正在尝试编写一个应用程序,让我和一个 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/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com