在安卓系统中,我将ImageView的layout_width定义为fill_parent (占手机的整个宽度)。
如果我上传到ImageView的图片比layout_width大,安卓系统会缩放它,对吧?但是高度呢?当Android缩放图像时,它会保持宽高比吗?
我发现,当安卓缩放比ImageView更大的图像时,ImageView的顶部和底部会有一些空白。这是真的吗?如果是,我如何消除那个空格?
发布于 2010-03-26 23:07:27
android:src="..."而不是android:background="..."将图像设置为ImageView。src=使其在保持纵横比的情况下缩放图像,但background=使其缩放和扭曲图像以使其完全适合ImageView的大小。(不过,您可以同时使用背景和源,这对于仅使用一个ImageView在主图像周围显示帧之类的事情很有用。)android:adjustViewBounds让ImageView调整自己的大小以适应缩放后的图像。例如,如果您有一个通常为正方形ImageView的矩形图像,adjustViewBounds=true会将其调整为矩形的ImageView大小。这会影响其他视图在ImageView中的布局。然后,正如萨姆赫所写的,你可以使用android:scaleType参数来改变它默认缩放图像的方式。顺便说一句,要发现这是如何工作的,最简单的方法就是自己试验一下!只需记住查看模拟器本身(或实际的电话)中的布局,因为Eclipse中的预览通常是错误的。
发布于 2010-07-08 20:08:07
发布于 2011-05-27 02:45:04
任何其他有这个特殊问题的人。您有一个希望宽度为fill_parent、高度按比例缩放的ImageView:
将这两个属性添加到ImageView中
android:adjustViewBounds="true"
android:scaleType="centerCrop"并将ImageView的宽度设置为fill_parent,将高度设置为wrap_content。
另外,如果你不想让你的图片被裁剪,试试这个:
android:adjustViewBounds="true"
android:layout_centerInParent="true"https://stackoverflow.com/questions/2521959
复制相似问题