需求
在工作中要在ImageView显示一个长图。
问题
直接使用会导致图片拉伸变形
尝试android:scaleType="fitStart"
后图片不会被拉伸,但是ImageView
高度和图片高度不一致,在图片下方留下大量空白。
解决方案
使用android:scaleType="fitStart"
和android:adjustViewBounds="true"
。
<ImageView
android:id="@+id/imageView"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:scaleType="fitStart"
android:adjustViewBounds="true"
android:src="@drawable/help_img" />
分析
关于scaleType
可以看这篇文章:[Android] ImageView.ScaleType设置图解
android:adjustViewBounds
这个属性保证了ImageView的边界和他的drawable的长宽比一致
Set this to true if you want the ImageView to adjust its bounds to preserve the aspect ratio of its drawable