RSTapGesture
更优雅的处理触摸事件的方案
以编程方式添加手势识别器是一个很常见的操作。特别是,您可能需要响应一些UI组件上发生的touchDown、touchUpIside、touchUpOutside事件。
该类通过提供一个我个人偏好的闭包链语法来解决这个特定问题。
使用此类,您将能够
- 为任何视图添加/移除轻点手势识别器
- 定义与touchDown、touchUpInside、touchUpOutside事件相关联的闭包
示例
将手势识别器添加到视图是直接的
RSGestureRecognizer().add(to: view)
.onTouchDown { (recognizer) in
// touch down behaviour
}
.onTouchUpInside { (recognizer) in
// touch up inside behaviour
}
.onTouchUpOutside { (recognizer) in
// touch up outside behaviour
}
闭包是可选的,所以可以只分配需要的行为
RSGestureRecognizer().add(to: view)
.onTouchDown { (recognizer) in
// touch down behaviour
}
您可以在任何时间移除轻点手势,通过在其实例上调用remove()
函数,如果实例引用不可用,可以通过使用静态的find(in:)
函数直接检查视图来获取它
RSTapGesture.find(in: view)?.remove()
安装
RSTapGesture可以通过CocoaPods获得。要安装它,只需将以下行添加到您的Podfile中:
pod 'RSTapGesture'
作者
terrordrummer, [email protected]
许可协议
RSTapGesture可在MIT许可下使用。有关更多信息,请参阅LICENSE文件。