使用滑动更改开关索引

时间:2016-07-12 14:56:38

标签: ios swift cocoapods uiswitch

我想知道是否可以通过滑动更改开关索引?我正在使用 gontovnik的 DGRunkeeperSwitch库。实施后,它看起来像这样:

enter image description here

它使用视图来工作。我试图在刷卡后以编程方式更改它的索引。我试过这样,它包含我的swipeGesture代码和行,它们应该更改index

let leftSwipe = UISwipeGestureRecognizer(target: self, action: "respond:")
leftSwipe.direction = .Left
view.addGestureRecognizer(leftSwipe)

let rightSwipe = UISwipeGestureRecognizer(target: self, action: "respond:")
leftSwipe.direction = .Right
view.addGestureRecognizer(rightSwipe)

func respond(sender: DGRunkeeperSwitch!, gesture: UIGestureRecognizer){
        if let swipeGesture = gesture as? UISwipeGestureRecognizer{
            switch swipeGesture.direction{
            case UISwipeGestureRecognizerDirection.Left:
                sender.selectedIndex == 0

            case UISwipeGestureRecognizerDirection.Right:
                sender.selectedIndex == 1


            default:
                break

            }
        }

}

但它给了我信号SGABRT 错误

  

'无法识别的选择器发送到实例0x7fd788536ad0'

我还尝试滑动更改默认UISwitch的值,其工作方式如下:

mySwitch.on == true

我做错了什么,你们能给我正确的方向吗?我想我正在强迫一些东西,但我不知道是什么。

1 个答案:

答案 0 :(得分:0)

respond:不是具有2个参数的函数的正确签名。

您应该使用#selector(...)来定义操作,可能类似于#selector(YourClass.respond(_:gesture:))