我想知道是否可以通过滑动更改开关索引?我正在使用 gontovnik的 DGRunkeeperSwitch
库。实施后,它看起来像这样:
它使用视图来工作。我试图在刷卡后以编程方式更改它的索引。我试过这样,它包含我的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
我做错了什么,你们能给我正确的方向吗?我想我正在强迫一些东西,但我不知道是什么。
答案 0 :(得分:0)
respond:
不是具有2个参数的函数的正确签名。
您应该使用#selector(...)
来定义操作,可能类似于#selector(YourClass.respond(_:gesture:))