MCPcopy Index your code
hub / github.com/ChenSiLiang/RotatePhotoView

github.com/ChenSiLiang/RotatePhotoView @v1.0.2

Chat with this repo
repository ↗ · DeepWiki ↗ · release v1.0.2 ↗ · + Follow
323 symbols 661 edges 28 files 93 documented · 29%
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

RotatePhotoView

Adding Rotation with two finger function on PhotoView

looklike

Set Up

Gradle

compile "com.chensl.rotatephotoview:rotatephotoview:1.0.2"

and don't forget to add jcenter() to repositories

Usage

in code

you need to enable rotation, by default it's false.

PhotoViewAttacher attacher = new PhotoViewAttacher(mImageView);
attacher.setRotatable(true);

set rotate listener

photoView.setOnViewRotateListener(new PhotoViewAttacher.OnViewRotateListener() {
    @Override
    public void onRotate(int degree) {
         //do something
    }
});

enable recover to Right Angle(0,90,180,270),by default it's false.

mAttacher.setToRightAngle(true);

other functions just as PhotoView.

don't forget to clear when leave,for example.

@Override
public void onDestroy() {
    attacher.cleanup();
    super.onDestroy();
}

in xml

 <uk.co.senab.photoview.PhotoView
    android:id="@+id/photoview"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content" />

With Volley

let the PhotoView extends Volley.NetworkImageView instead of ImageView.

Waring

Catch IllegalArgumentException when working with ViewPager,see HackyViewPager for more details.

License

Copyright 2011, 2012 Chris Banes

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.

Extension points exported contracts — how you extend this code

Logger (Interface)
interface for a logger class to replace the static calls to android.util.Log [3 implementers]
RotatePhotoView/rotatephotoview/src/main/java/uk/co/senab/photoview/log/Logger.java
OnRotateListener (Interface)
Interface definition for a callback to be invoked when the ImageView is roateted with two finger. @author ChenSL [2 implementers]
RotatePhotoView/rotatephotoview/src/main/java/uk/co/senab/photoview/PhotoViewAttacher.java
IPhotoView (Interface)
(no doc) [4 implementers]
RotatePhotoView/rotatephotoview/src/main/java/uk/co/senab/photoview/IPhotoView.java
IRotateDetector (Interface)
Interface to detect rotation Created by ChenSL on 2015/9/16. [2 implementers]
RotatePhotoView/rotatephotoview/src/main/java/uk/co/senab/photoview/gestures/IRotateDetector.java
IRotateListener (Interface)
Interface for a callback for rotation Created by ChenSL on 2015/9/16. [2 implementers]
RotatePhotoView/rotatephotoview/src/main/java/uk/co/senab/photoview/gestures/IRotateListener.java

Core symbols most depended-on inside this repo

getImageView
called by 21
RotatePhotoView/rotatephotoview/src/main/java/uk/co/senab/photoview/PhotoViewAttacher.java
getLogger
called by 10
RotatePhotoView/rotatephotoview/src/main/java/uk/co/senab/photoview/log/LogManager.java
d
called by 9
RotatePhotoView/rotatephotoview/src/main/java/uk/co/senab/photoview/log/Logger.java
checkAndDisplayMatrix
called by 8
RotatePhotoView/rotatephotoview/src/main/java/uk/co/senab/photoview/PhotoViewAttacher.java
getDrawMatrix
called by 7
RotatePhotoView/rotatephotoview/src/main/java/uk/co/senab/photoview/PhotoViewAttacher.java
setScale
called by 7
RotatePhotoView/rotatephotoview/src/main/java/uk/co/senab/photoview/IPhotoView.java
i
called by 7
RotatePhotoView/rotatephotoview/src/main/java/uk/co/senab/photoview/log/Logger.java
onTouchEvent
called by 7
RotatePhotoView/rotatephotoview/src/main/java/uk/co/senab/photoview/gestures/GestureDetector.java

Shape

Method 286
Class 26
Interface 11

Languages

Java100%

Modules by API surface

RotatePhotoView/rotatephotoview/src/main/java/uk/co/senab/photoview/PhotoViewAttacher.java93 symbols
RotatePhotoView/rotatephotoview/src/main/java/uk/co/senab/photoview/PhotoView.java47 symbols
RotatePhotoView/rotatephotoview/src/main/java/uk/co/senab/photoview/IPhotoView.java39 symbols
RotatePhotoView/app/src/main/java/com/chensl/rotatephotoview/fragment/ViewPagerPhotoViewFragment.java15 symbols
RotatePhotoView/app/src/main/java/com/chensl/rotatephotoview/fragment/SinglePhotoViewFragment.java9 symbols
RotatePhotoView/rotatephotoview/src/main/java/uk/co/senab/photoview/scrollerproxy/ScrollerProxy.java8 symbols
RotatePhotoView/rotatephotoview/src/main/java/uk/co/senab/photoview/scrollerproxy/PreGingerScroller.java8 symbols
RotatePhotoView/rotatephotoview/src/main/java/uk/co/senab/photoview/scrollerproxy/GingerScroller.java8 symbols
RotatePhotoView/rotatephotoview/src/main/java/uk/co/senab/photoview/gestures/CupcakeGestureDetector.java8 symbols
RotatePhotoView/app/src/main/java/com/chensl/rotatephotoview/MyLog.java8 symbols
RotatePhotoView/rotatephotoview/src/main/java/uk/co/senab/photoview/gestures/RotateGestureDetector.java7 symbols
RotatePhotoView/rotatephotoview/src/main/java/uk/co/senab/photoview/gestures/FroyoGestureDetector.java7 symbols

For agents

$ claude mcp add RotatePhotoView \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact

Ask about this repo answers extend the page