### Buttonを押すことで、Labelの表示を更新したい
サッカーのジャッジをするようなアプリを作っています。
考えている内容としては、黄色いボタンを押したらイエローカードの画面に遷移し、黄色いボタンの上のLabelの数字に1足されます。また赤いボタンを押したらレッドカードの画面に遷移し、赤いボタンの上のLabelの数字に1足されます。
サッカーとは違う点として、黄色いボタンのLabelの数字が5になった時点で赤いボタンのLabalの数字が1になり、赤・黄色ボタンのどちらも反応しなくなります。
これらを実装する方法を教えていただけますでしょうか。
補足情報(ソースコード,storyboard)
ViewController
import UIKit
class ViewController: UIViewController {
// LabelとButtonの変数の定義 @IBOutlet weak var RedCountLabel: UILabel! @IBOutlet weak var YellowCountLabel: UILabel! @IBOutlet weak var RedButton: UIButton! @IBOutlet weak var YellowButton: UIButton! // タップ回数を記録する整数 var tapCount: Int = 0 var num_a: Int = 0 var num_b: Int = 0 override func viewDidLoad() { super.viewDidLoad() // 初期化 self.initEveryone() // Do any additional setup after loading the view, typically from a nib. } // 各部の初期化 func initEveryone() { self.tapCount = 0 // カウント self.updateNumbers(index: self.tapCount) // ラベルテキスト } // 文字のアップデート func updateNumbers(index: Int) { num_a = tapCount self.RedCountLabel.text = self.num_a.description for _ in 0..<2 { num_b = tapCount self.YellowCountLabel.text = self.num_b.description } } // RedButtonをタップした時の処理 @IBAction func didTapRedButton(_ sender: Any) { tapCount += 1 self.updateNumbers(index: self.tapCount) } // YellowButtonをタップした時の処理 @IBAction func didTapYellowButton(_ sender: Any) { // タップ回数を加算 tapCount += 1 // タップ回数に応じた文字に更新 self.updateNumbers(index: self.tapCount) } @IBAction func ResetButton(_ sender: Any) { RedCountLabel.text = "0" YellowCountLabel.text = "0" }
}
storyboard
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/12/04 09:56