Skip to content

Instantly share code, notes, and snippets.

@gatesakagi
Created March 10, 2017 17:17
Show Gist options
  • Save gatesakagi/214eb83dd4bd6499a408223a0913b64e to your computer and use it in GitHub Desktop.
Save gatesakagi/214eb83dd4bd6499a408223a0913b64e to your computer and use it in GitHub Desktop.
@IBAction func switchAction(_ sender: UISwitch) {
print("switchGood\(switchGood.isOn), switchFast\(switchFast.isOn), switchCheap\(switchCheap.isOn)")
switch sender.tag {
case 0: //switchGood
setupSwitchsStatus(labelSource: labelGood, switchSource: switchGood, labelDesignated1: labelFast, switchDesignated1: switchFast, labelDesignated2: labelCheap, switchDesignated2: switchCheap)
case 1: //switchFast
setupSwitchsStatus(labelSource: labelFast, switchSource: switchFast, labelDesignated1: labelGood, switchDesignated1: switchGood, labelDesignated2: labelCheap, switchDesignated2: switchCheap)
case 2: //switchCheap
setupSwitchsStatus(labelSource: labelCheap, switchSource: switchCheap, labelDesignated1: labelGood, switchDesignated1: switchGood, labelDesignated2: labelFast, switchDesignated2: switchFast)
default:
break;
}
}
func setupSwitchsStatus(labelSource: UILabel, switchSource: UISwitch, labelDesignated1: UILabel, switchDesignated1: UISwitch,labelDesignated2: UILabel, switchDesignated2: UISwitch) {
if (switchSource.isOn == true) {
labelSource.alpha = 1.0
if (switchDesignated1.isOn == true) {
switchDesignated2.setOn(false, animated: true)
labelDesignated2.alpha = 0.5
} else if (switchDesignated2.isOn == true) {
switchDesignated1.setOn(false, animated: true)
labelDesignated1.alpha = 0.5
}
} else {
labelSource.alpha = 0.5;
if (switchDesignated1.isOn == true) {
switchDesignated2.setOn(true, animated: true)
labelDesignated2.alpha = 1.0
} else if (switchDesignated2.isOn == true) {
switchDesignated1.setOn(true, animated: true)
labelDesignated1.alpha = 1.0
}
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment