I have a UISwitch that I want to control a boolean value in a function I wrote. I looked in the UISwitch Type Reference and it listed the property
Add the UISwitch Reference into ViewController.swift file.
@IBOutlet var mySwitch: UISwitch
@IBOutlet var switchState: UILabel
then add the target event into the viewdidload method like below
mySwitch.addTarget(self, action: #selector(ViewController.switchIsChanged(_:)), forControlEvents: UIControlEvents.ValueChanged)
When the switch is flipped the UIControlEventValueChanged event is triggered and the stateChanged method will be called.
func switchIsChanged(mySwitch: UISwitch) {
if mySwitch.on {
switchState.text = "UISwitch is ON"
} else {
switchState.text = "UISwitch is OFF"
}
}
Swift 3.0
func switchIsChanged(mySwitch: UISwitch) {
if mySwitch.isOn {
switchState.text = "UISwitch is ON"
} else {
switchState.text = "UISwitch is OFF"
}
}
Swift 4.0
@objc func switchIsChanged(mySwitch: UISwitch) {
if mySwitch.isOn {
switchState.text = "UISwitch is ON"
} else {
switchState.text = "UISwitch is OFF"
}
}
find brief tutorial in http://sourcefreeze.com/uiswitch-tutorial-using-swift-in-ios8/