帶有手勢控制的ImageView和FrameLayout:GestureViews
帶有手勢控制和位置動畫的ImageView和FrameLayout。這個庫的目的是讓圖片查看盡可能流暢和方便,同時方便開發者把它集成到自己的項目中。
Usage
Add dependency to yourbuild.gradlefile:
compile 'com.alexvasilkov:gesture-views:2.0.0'
Just addGestureImageViewto your layout:
<com.alexvasilkov.gestures.views.GestureImageView android:layout_width="match_parent" android:layout_height="match_parent" />
Or addGestureFrameLayout:
<com.alexvasilkov.gestures.views.GestureFrameLayout android:layout_width="match_parent" android:layout_height="match_parent"> <!-- GestureFrameLayout can contain only one child --> <FrameLayout android:layout_width="match_parent" android:layout_height="match_parent"> <!-- Layout content goes here --> </FrameLayout> </com.alexvasilkov.gestures.views.GestureFrameLayout>
Setup
GestureViewscan be customised usinggestureView.getController().getSettings():
gestureView.getController().getSettings() .setMaxZoom(2f) .setPanEnabled(true) .setZoomEnabled(true) .setDoubleTapEnabled(true) .setRotationEnabled(false) .setOverscrollDistance(0f, 0f) .setOverzoomFactor(2f) .setFillViewport(false) .setFitMethod(Settings.Fit.INSIDE) .setGravity(Gravity.CENTER);
Note: example above shows default values, you will not need to set them yourself.
See also full settings list with descriptions.
ViewPager
If you plan to useGestureViewsinsideViewPageryou should additionally call:
gestureView.getController().enableScrollInViewPager(viewPager);
Listeners
You can listen for state changes (position, zoom, rotation):
addOnStateChangeListener(OnStateChangeListener listener) removeOnStateChangeListener(OnStateChangeListener listener)
You can also listen for additional gestures:
- onDown
- onSingleTapUp
- onSingleTapConfirmed
- onLongPress
- onDoubleTap
with:
setOnGesturesListener(OnGestureListener listener)
Animations
See Basic animations and Advanced animations pages for more info.
Custom views
See Custom views page.
本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!