Swift UISegmentedControl IBAction值不会改变

N3u*_*r0n 2 uisegmentedcontrol swift

所以我想跟踪用户想要循环的方向.因此,我有一个分段控件来选择方向.

这是代码:

@IBOutlet weak var cycleSwitch: UISegmentedControl!
@IBAction func setCycleDirection(sender: AnyObject) {

        switch cycleSwitch.selectedSegmentIndex
            {
        case 0:
            cycleDirection = cycleSwitch.selectedSegmentIndex
        case 1:
            cycleDirection = cycleSwitch.selectedSegmentIndex
        default:
            break
        }
    println(cycleDirection)
}
Run Code Online (Sandbox Code Playgroud)

但什么都没打印出来.即使我评论所有内容并且只是有一个println("我在行动中")也不会记录.我也尝试过这个if语句,例如cycleSwitch.selectedSegmentIndex == 0等.两者都不起作用.

关于价值观不会改变的任何建议或想法?

and*_*oft 5

要检查的一些事项:

  1. 确保您的分段控件@IBAction与其"Value Changed"操作相关联.要执行此操作,请在Storyboard中控制并单击您的分段控件,然后仔细检查以确保"Value Changed"连接到View Controller
  2. 将sender:参数更改为a UISegmentedControl而不是AnyObject
  3. 而不是在switch语句中引用你的cycleSwitch @IBOutlet引用sender:
switch sender.selectedSegmentIndex
                {
            case 0:
                cycleDirection = sender.selectedSegmentIndex
            case 1:
                cycleDirection = sender.selectedSegmentIndex
            default:
                break
            }
Run Code Online (Sandbox Code Playgroud)