同じ値が設定されたimageview
で高さと幅がfill_parent
に設定されたlinearlayout
があります。そのため、これで画面に合わせて画像を設定する必要があると思います。ただし、80%(ランドスケープモードの上部と下部のマージン)程度に収まります。
私は次のコードを試してみましたが成功しませんでした:
Display display = getWindowManager().getDefaultDisplay();
int width = display.getWidth();
int height = display.getHeight();
imgView.setMinimumWidth(width);
imgView.setMinimumHeight(height);
imgView.setMaxWidth(width);
imgView.setMaxHeight(height);
他のアイデアはありますか?
imgview.setScaleType(ScaleType.FIT_XY);
を使用します
レイアウトのxmlファイルを指定しますAndroid:scaleType="fitXY"
PS:背景がデフォルトでビューに合わせて伸縮するように設定されているため、これはAndroid:src="..."
ではなくAndroid:background="..."
で画像が設定されている場合に適用されます。
これを使って:
ImageView.setAdjustViewBounds(true);
Android:scaleType="fitXY"
を使用する場合は、指定する必要があります
Android:layout_width="75dp"
およびAndroid:layout_height="75dp"
wrap_contentを使用する場合、必要なものまで伸びません
<ImageView
Android:layout_width="75dp"
Android:layout_height="75dp"
Android:id="@+id/listItemNoteImage"
Android:src="@drawable/MyImage"
Android:layout_alignParentTop="true"
Android:layout_alignParentStart="true"
Android:layout_marginStart="12dp"
Android:scaleType="fitXY"/>
受け入れられた答えは完璧ですが、xmlからそれをしたい場合は、Android:scaleType="fitXY"
を使用できます
XmlファイルでこのAndroid:scaleType="fitXY"
コードを使用しました。
imageViewの高さと幅をwrap_contentに変更して使用するだけです
exampleImage.setScaleType(ImageView.ScaleType.FIT_XY);
あなたのコードで。