Sensitive is a library that simplifies work with gestures in iOS. Forget about target/action pattern of primitive UIGestureRecognizer. With Sensitive you can call onTap, onPinch, onSwipe on any UIView instance and implement handler for the gesture. That's all that you should know to start. For details, see Usage section.
- Copy content of
Sourcefolder to your project.
or
- Use
Sensitivecocoapod.
- iOS 9.0 and later
- Xcode 9.0 and later
- Swift 4.1 or later
All gestures are available via special variables that you can call on any UIView instance. Examples:
view.onTap
.configure(with: { (gestureRecognizer) in
// Configure `UITapGestureRecognizer` instance
gestureRecognizer.numberOfTapsRequired = 2
})
.handle { (gestureRecognizer) in
// Handle tap on view
gestureRecognizer.view!.backgroundColor = .green
}
view.onSwipe
.configure(with: { (gestureRecognizer) in
// Configure `UISwipeGestureRecognizer` instance
gestureRecognizer.direction = .left
})
.handle { (gestureRecognizer) in
// Handle tap on view
gestureRecognizer.view!.backgroundColor = .green
}Full list of available gestures:
onTaponLongPressonPanonPinchonRotationonSwipeonScreenEdgePan
If you need few gestures to work together on the same view, you can also use recognizeSimultaneously method:
view.onTap
.handle { (gestureRecognizer) in
// Your implementation here...
}
.recognizeSimultaneously(true)
view.onPinch
.handle { (gestureRecognizer) in
// Your implementation here...
}
.recognizeSimultaneously(true)Sensitive is available under the MIT license. See the LICENSE file for more info.
