miyazaki-dev

【Swift】UISwitchを作成する

Swift

UISwitchを作成することがあったのでメモ。

swiftでUISwitchを実装

(チカチカしてすみません。(笑))

ストーリーボード無しUISwitchのサンプルコード

class ViewController: UIViewController {

  let sampleSwitch: UISwitch = UISwitch()
    
  override func viewDidLoad() {
    super.viewDidLoad()
    // Do any additional setup after loading the view, typically from a nib.
        
    // 適当な位置にswitchを配置
    self.sampleSwitch.frame = CGRect(x: 150, y: 200, width: 200, height: 20)

    // sampleSwitchが押されたときにswitchTappedが動くように設定
    self.sampleSwitch.addTarget(
        self,
        action: #selector(self.switchTapped(_:)),
        for: UIControl.Event.valueChanged
    )
        
    // viewにadd
    self.view.addSubview(self.sampleSwitch)
  }

  //UISwitchが押された時の処理の中身
  @objc func switchTapped(_ sender: UISwitch){
    // onのとき背景を青に
    if sender.isOn {
      self.view.backgroundColor = UIColor.blue
    }else { // offのとき背景を赤に
      self.view.backgroundColor = UIColor.red
    }
  }  
}