 CameraView
    CameraView
    
    CameraView listen to lots of different gestures inside its bounds. You have the chance to map
these gestures to particular actions or camera controls, using the mapGesture() method.
This lets you emulate typical behaviors in a single line:
cameraView.mapGesture(Gesture.PINCH, GestureAction.ZOOM); // Pinch to zoom!
cameraView.mapGesture(Gesture.TAP, GestureAction.AUTO_FOCUS); // Tap to focus!
cameraView.mapGesture(Gesture.LONG_TAP, GestureAction.TAKE_PICTURE); // Long tap to shoot!
Simple as that. There are two things to be noted:
CameraOptions to know what’s legit and what’s not.| Gesture | Description | Can be mapped to | 
|---|---|---|
| PINCH | Pinch gesture, typically assigned to the zoom control. | ZOOMEXPOSURE_CORRECTIONFILTER_CONTROL_1FILTER_CONTROL_2NONE | 
| TAP | Single tap gesture, typically assigned to the focus control. | AUTO_FOCUSTAKE_PICTURETAKE_PICTURE_SNAPSHOTNONE | 
| LONG_TAP | Long tap gesture. | AUTO_FOCUSTAKE_PICTURETAKE_PICTURE_SNAPSHOTNONE | 
| SCROLL_HORIZONTAL | Horizontal movement gesture. | ZOOMEXPOSURE_CORRECTIONFILTER_CONTROL_1FILTER_CONTROL_2NONE | 
| SCROLL_VERTICAL | Vertical movement gesture. | ZOOMEXPOSURE_CORRECTIONFILTER_CONTROL_1FILTER_CONTROL_2NONE | 
Looking at this from the other side:
| Gesture action | Description | Can be mapped to | 
|---|---|---|
| NONE | Disables this gesture. | TAPLONG_TAPPINCHSCROLL_HORIZONTALSCROLL_VERTICAL | 
| AUTO_FOCUS | Launches a touch metering operation on the finger position. | TAPLONG_TAP | 
| TAKE_PICTURE | Takes a picture using takePicture. | TAPLONG_TAP | 
| TAKE_PICTURE_SNAPSHOT | Takes a picture using takePictureSnapshot. | TAPLONG_TAP | 
| ZOOM | Zooms in or out. | PINCHSCROLL_HORIZONTALSCROLL_VERTICAL | 
| EXPOSURE_CORRECTION | Controls the exposure correction. | PINCHSCROLL_HORIZONTALSCROLL_VERTICAL | 
| FILTER_CONTROL_1 | Controls the first parameter (if any) of a real-time filter. | PINCHSCROLL_HORIZONTALSCROLL_VERTICAL | 
| FILTER_CONTROL_2 | Controls the second parameter (if any) of a real-time filter. | PINCHSCROLL_HORIZONTALSCROLL_VERTICAL | 
<com.otaliastudios.cameraview.CameraView
    app:cameraGesturePinch="zoom|exposureCorrection|filterControl1|filterControl2|none"
    app:cameraGestureTap="autoFocus|takePicture|takePictureSnapshot|none"
    app:cameraGestureLongTap="autoFocus|takePicture|takePictureSnapshot|none"
    app:cameraGestureScrollHorizontal="zoom|exposureCorrection|filterControl1|filterControl2|none"
    app:cameraGestureScrollVertical="zoom|exposureCorrection|filterControl1|filterControl2|none"/>
| Method | Description | 
|---|---|
| mapGesture(Gesture, GestureAction) | Maps a certain gesture to a certain action. No-op if the action is not supported. | 
| getGestureAction(Gesture) | Returns the action currently mapped to the given gesture. | 
| clearGesture(Gesture) | Clears any action mapped to the given gesture. |