자주 묻고 대답하지 않았습니다 (적어도 재현 가능한 방식은 아닙니다).
보기 보다 작은 이미지가있는 이미지보기가 있습니다. 이미지를 화면 너비에 맞게 조정하고 비례 적으로 올바른 이미지 높이를 반영하도록 ImageView의 높이를 조정하고 싶습니다.
<ImageView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
/>
이로 인해 이미지가 원래 크기 (화면 너비보다 작음)에 중앙에 위치하고 측면에 여백이 있습니다. 좋지 않다.
그래서 추가했습니다
android:adjustViewBounds="true"
같은 효과, 좋지 않습니다. 나는 추가했다
android:scaleType="centerInside"
같은 효과, 좋지 않습니다. 로 변경 centerInside
했습니다 fitCenter
. 같은 효과, 좋지 않습니다. 로 변경 centerInside
했습니다 centerCrop
.
android:scaleType="centerCrop"
이제 마지막으로 이미지가 화면 너비에 맞게 조정 되지만 상단과 하단이 잘립니다 ! 그래서 변화 centerCrop
에 fitXY
.
android:scaleType="fitXY"
이제 이미지가 화면 너비에 맞춰 조정 되지만 y 축에 맞춰 조정 되지 않아 이미지 가 왜곡 됩니다.
제거해 android:adjustViewBounds="true"
도 효과가 없습니다. android:layout_gravity
다른 곳에서 제안한대로을 추가해도 다시 효과가 없습니다.
나는 다른 조합을 시도했지만 아무 소용이 없습니다. 그래서, 누구든지 알고 있습니까?
화면 너비를 채우고, 전체보기를 채우기 위해 더 작은 이미지의 크기를 조정하고, 왜곡이나 자르기없이 종횡비로 이미지를 표시하도록 ImageView의 XML을 어떻게 설정합니까?
편집 : 또한 임의의 숫자 높이 설정을 시도했습니다. 이것은 설정에만 영향을 미칩니다 centerCrop
. 뷰 높이에 따라 이미지가 수직으로 왜곡됩니다.
android:scaleType="fitCenter"
?