【Swift】Labelにタップイベントを追加する
出力結果
解説
・UserInterfaceEnabledを使い、Labelにタップイベントを追加
・必要なのは、①tag ②UserInterfaceEnabledの許可
・tagが設定されていないものは、基本的にViewを認識する
・画面全体にタップイベントを追加するUIGestureRecognaizerもどうぞ
↓
ストーリーボード
ソースコード
import UIKit class ViewController: UIViewController { //StoryBoard上で既に、①tag ②UserIntaractionEnabled、を設定している @IBOutlet weak var label: UILabel! override func viewDidLoad() { super.viewDidLoad() //もし①と②をコードで設定するなら下記のように記述 // label.isUserInteractionEnabled = true // label.tag = 1 } override func touchesEnded(_ touches: Set<UITouch>, with event: UIEvent?) { super.touchesEnded(touches, with: event) //タップイベント時に実行 for touch:UITouch in touches { //タップした箇所のtagを取得 let tag = touch.view!.tag //tagをswitchで比較 switch tag { //Labelをタップしたら case 1: print("Labelがタップされました") //Label以外をタップしたら default: print("Label以外がタップされました") } } } }