GestureViews
ImageView and FrameLayout with gestures control and position animation.
Main goal of this library is to make images viewing process as smooth as possible and to make it easier for developers to integrate it into their apps.
Features
- Gestures support: pan, zoom, quick scale, fling, double tap, rotation.
- Seamless integration with ViewPager (panning smoothly turns into ViewPager flipping and vise versa).
- View position animation ("opening" animation). Useful to animate into full image view mode.
- Advanced animation from RecyclerView (or ListView) into ViewPager.
- Exit full image mode by scroll and scale gestures.
- Rounded images with animations support.
- Image cropping (supports rotation).
- Lots of settings.
- Gestures listener: down (touch), up (touch), single tap, double tap, long press.
- Custom state animation (animating position, zoom, rotation).
- Supports both ImageView and FrameLayout out of the box, also supports custom views.
Sample app
Demo video
Usage
Add dependency to your build.gradle
file:
implementation 'com.alexvasilkov:gesture-views:2.7.1'
License
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.