最近在项目中遇到了ScrollView中嵌套ImageView,导致图片上下有空白
如图:

     

 

 

在网上找解决的办法,说在ImageView中设置

 

 android:scaleType="fitXY" 这个属性,虽然解决了,但是又出现了一个新的问题 就是图片失针了,继续找,找到了这个属性 android:adjustViewBounds="true"这样问题就解决了如图:ImageView 的adjustViewBounds 属性
取值为true时: Adjust the ImageView's bounds to preserve the aspect ration of its drawable. 调整ImageView的界限来保持图像纵横比不变。 这并不意味着ImageView的纵横比就一定和图像的纵横比相同   XML定义里的android:adjustViewBounds="true"会将这个ImageView的scaleType设为fitCenter。不过这个fitCenter会被后面定义的scaleType属性覆盖(如果定义了的话),除非在Java代码里再次显示调用setAdjustViewBounds(true)。   如果设置的layout_width与layout_height都是定值,那么设置adjustViewBounds是没有效果的,ImageView将始终是设定的定值的宽高。   如果设置的layout_width与layout_height都是wrap_content,那么设置adjustViewBounds是没有意义的,因为ImageView将始终与图片拥有相同的宽高比(但是并不是相同的宽高值,通常都会放大一些)。   如果两者中一个是定值,一个是wrap_content,比如layout_width="100px",layout_height="wrap_content"时,ImageView的宽将始终是100px,而高则分两种情况: (1)当图片的宽小于100px时,layout_height将与图片的高相同,即图片不会缩放,完整显示在ImageView中,ImageView高度与图片实际高度相同。图片没有占满ImageView,ImageView中有空白。 (2)当图片的宽大于等于100px时,此时ImageView将与图片拥有相同的宽高比,因此ImageView的layout_height值为:100除以图片的宽高比。比如图片是500X500的,那么layout_height是100。图片将保持宽高比缩放,完整显示在ImageView中,并且完全占满ImageView。

 

更多相关文章

  1. Android(安卓)Manifest之元素中文注释
  2. 自定义控件:onDraw 方法实现仿 iOS 的开关效果
  3. Android更改Activity样式和隐藏标题
  4. android扁平化界面设计—在android中使用Font-Awesome
  5. 如何设置Android中TextView的行间距
  6. Android之三种实现自定义ProgressBar的方式
  7. 自定义Android注解Part3:绑定
  8. android binder机制之——(创建binder服务)
  9. Android(安卓)ListView从网络获取图片及文字显示

随机推荐

  1. 用两张图,详解FreeModbus在单片机串口上的
  2. 如何在Mac上为自己设置“屏幕使用时间”
  3. 在苹果Mac上如何覆盖现有音频?
  4. 短信验证码服务平台哪个好?
  5. Windows部署多个Memcached和Redis服务
  6. 摩杜云:打造新基建核心支柱,数据增值将成为
  7. 痞子衡嵌入式:基于恩智浦i.MXRT1060的MP4
  8. 痞子衡嵌入式:盘点国内RISC-V内核MCU厂商(2
  9. 痞子衡嵌入式:RT-UFL - 一个适用全平台i.M
  10. 痞子衡嵌入式:盘点国内RISC-V内核MCU厂商(2