ImageView가 스크롤 가능한보기 안에 있습니다. 내가 이미지를 확대하면Android ImavaView 확대/축소되지 않음 Image
<jp.vuph.TwoDScrollView
android:id="@+id/two_d_scroll_view"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@android:color/white">
<RelativeLayout
android:id="@+id/layout_drawing"
android:orientation="horizontal"
android:layout_width="wrap_content"
android:layout_height="wrap_content">
<ImageView
android:id="@+id/image_view_main"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:scaleType="matrix"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
android:adjustViewBounds="true"
android:contentDescription="@string/contentDescription"/>
</RelativeLayout>
</jp.vuph.TwoDScrollView>
는, 그 이미지 뷰는 모든 확대 된 이미지를 워프하지 않는, 그래서 나는 볼 수 없습니다 껄의 일부가 내 코드
private class ScaleGestureListener implements ScaleGestureDetector.OnScaleGestureListener {
@Override
public boolean onScale(ScaleGestureDetector detector) {
d = mImageViewMain.getDrawable();
mScale *= detector.getScaleFactor();
float xDiff = initialFocalPoints[0] - currentFocalPoints[0];
float yDiff = initialFocalPoints[1] - currentFocalPoints[1];
matrix.setScale(mScale, mScale, currentFocalPoints[0], currentFocalPoints[1]);
matrix.postTranslate(xDiff, yDiff);
mImageViewMain.setImageMatrix(matrix);
return true;
}
@Override
public boolean onScaleBegin(ScaleGestureDetector detector) {
float startX = detector.getFocusX();
float startY = detector.getFocusY();
initialFocalPoints = new float[]{startX, startY};
Matrix inverseTransformMatrix = new Matrix();
if(matrix.invert(inverseTransformMatrix))
inverseTransformMatrix.mapPoints(currentFocalPoints, initialFocalPoints);
return true;
}
@Override
public void onScaleEnd(ScaleGestureDetector detector) {
return;
}
입니다 그것은 가능하다 ImageView가 모든 확대 된 이미지를 래핑하게 만드시겠습니까? 나는 여러 가지 방법을 시도했지만 여전히 그렇게 할 수는 없다.