3

私はAndroidアプリを開発しています。私のアプリケーションでは、Facebook のようなズーム画像機能が必要です。だから、私はこのライブラリを使用しました - https://github.com/chrisbanes/PhotoView。しかし、画像が最初にロードされたときに完全な画像を表示することに問題があります。

これは、PhotoViewAttacherをImageViewに設定する方法です

    photoViewAttacher = new PhotoViewAttacher(imageView);
    photoViewAttacher.setZoomable(true);
    photoViewAttacher.update();

これは、imageview の xml レイアウトです。

      <ImageView

        android:id="@+id/item_details_image"
        android:scaleType="fitCenter"
        android:layout_width="match_parent"
        android:layout_height="match_parent" />

私がやろうとしているのは、画像が画面サイズよりも大きい場合、画像が画面に収まるように表示することです。どんなに大きくても。ただし、画像は画面サイズよりも小さい場合があります。最初に完全な画像を表示したいだけです。しかし、上記のコードは私にこの結果を与えます。

ここに画像の説明を入力

スクリーンショットでわかるように、画像全体を表示することはできません。部分的にしか表示されません。画像の他の領域を見たい場合は、最初は画像が画面に収まらないため、スクロールまたはスワイプします。そのため、XML を変更して、最初に画像の全領域を表示しようとしました。これは私が変更した XML です。

<ImageView

        android:id="@+id/item_details_image"
        android:scaleType="centerInside"
        android:layout_width="match_parent"
        android:layout_height="wrap_content" />

ご覧のとおり、高さを match_parent から wrap_content に変更しました。スケールタイプも。に変更すると、最初はこのように全体像が表示されます。

ここに画像の説明を入力

全体像を示していますが、小さくなっています。私にとってはまったく問題ありません。それが私がしたいことです。問題はズーム機能にあります。ズームアップすると、画像は画像の高さより大きくなりません。以下のスクリーンショットを参照してください。

ここに画像の説明を入力

上記のように、ズームアップすると完全な画像が表示されません。ImageView の高さが変わりません。

4

1 に答える 1