android-ImageView及其子类

一、知识概要

  ImageView继承自View,能显示任何Drawable对象;

ImageView支持的常用XML属性及相关方法:

  android:adjustViewBounds    设置ImageView是否调整自己的边界来保持所显示图片的长宽比;

  android:cropToPadding  如果该属性设置为true,该组件将会被剪裁到保留ImageView的padding;

  android:maxHeight   设置ImageView的最大高度;

  android:maxWidth  设置ImageView的最大宽度;

  android:src  设置ImageView所显示的Drawable对象的ID;

  android:scaleType  设置所显示的图片如何缩放或移动以适应ImageView的大小,支持的属性值如下:

    .matrix(ImageView.ScaleType.MATRIX)  使用matrix进行缩放;

    .fitXY(ImageView.ScaleType.FIT_XY) 对图片进行横向、纵向独立缩放,使得图片完全适应于该ImageView(图片的纵横比可能发生变化);

    .fitStart(ImageView.ScaleType.FIT_START) 保持纵横比缩放图片,直到图片能完全显示在ImageView中(图片较长的边长与ImageView相应的变长相等),缩放后的图片                 放在ImagView的左上角;

    .fitCenter(ImageView.ScaleType.FIT_CENTER) 保持纵横比缩放图片,直到图片能完全显示在ImageView中(图片较长的边长与ImageView相应的变长相等),缩放后的图              片放在ImagView的中央;

    .fitEnd(ImageView.ScaleType.FIT_END) 保持纵横比缩放图片,直到图片能完全显示在ImageView中(图片较长的边长与ImageView相应的变长相等),缩放后的图片放在               ImagView的右下角;

    .center(ImageView.ScaleType.CENTER) 把图片放在ImageView中间,但不进行任何缩放;

    .centerCrop(ImageView.ScaleType.CENTER_CROP) 保持纵横比缩放图片,以使得图片能完全覆盖ImageView,只要图片的最短边能显示出来即可;

    .centerInside(ImageView.ScaleType.CENTER_INSIDE) 保持纵横比缩放图片,以使得ImageView能完全显示该图片。

为控制ImageView显示的图片,ImageView提供了如下方法:

  .setImageBitmap(Bitmap bm)  使用Bitmap位图设置该ImageView显示的图片;

  .setImageDrawable(Drawable drawable) 使用Drawable对象设置该ImageView显示的图片;

  .setImageResource(int resId) 使用图片资源id设置该ImageView显示的图片;

  .setImageURI(Uri uri) 使用图片的URI设置该ImageView显示的图片。

  

时间: 2024-12-16 04:37:01

android-ImageView及其子类的相关文章

Android有感(21):ImageView及其子类

ImageView继承自View,主要作用是显示图片和其他Drawable对象. ImageView也派生了ImageButton.ZoomButton等子类. ImageView支持的XML属性和相关的方法: XML属性 相关方法 说明 android:adjustViewBounds setAdjustViewBounds(boolean) 是否调整自己的边界来保持所显示图片的长宽比 android:baseline setBaseline(int) 设置视图内基线的偏移量 android:

UI组件之ImageView及其子类(一)ImageView显示图片

ImageView家族的继承关系如图: ImageView继承自View组件,它的主要功能室显示图片,还可以显示Drawable对象. ImageView直接子类是ImageButton,QuickContactBadge,间接子类是ZoomButton,因此ImageView 的所有XML属性,方法,基本上都可以用于ImageButton,ZoomButton ImageView的XML 属性如下: android:adjustViewBounds:是否调整自己的边界来保持所显示的图片长宽比.

ImageView及其子类

ImageView及其子类 (1)ImageView继承自View组件,任何Drawable对象都可以用ImageView来显示,ImageView派生出来了ImageButton.ZoomButton等组件. (2)ImageView支持的xml属性 android:adjustViewBounds     ------->设置ImageView是否调整自己的边界来保持所显示图片的长宽比 android:cropToPadding          -------->如果该属性设为true,

[转]Android ImageView的scaleType属性与adjustViewBounds属性

Android ImageView的scaleType属性与adjustViewBounds属性 ImageView的scaleType的属性有好几种,分别是matrix(默认).center.centerCrop.centerInside.fitCenter.fitEnd.fitStart.fitXY android:scaleType="center" 保持原图的大小,显示在ImageView的中心.当原图的size大于ImageView的size,超过部分裁剪处理. androi

Android ImageView的scaleType(图片比例类型)属性与adjustViewBounds(调整视图边界)属性

Android ImageView的scaleType属性与adjustViewBounds属性 实用性很强的属性经典总结 一.首先:ImageView的scaleType的属性有好几种,分别是matrix(默认).center.centerCrop.centerInside.fitCenter.fitEnd.fitStart.fitXY (1),android:scaleType="center" 保持原图的大小,显示在ImageView的中心.当原图的size大于ImageView

Android ImageView剖析及拓展

版本:1.0 日期:2014.6.11 2014.6.12 版权:© 2014 kince 转载注明出处 ImageView是开发中经常使用到的一个控件,也可以说是必不可少的.对于它的使用,除了注意ScaleType的理解和设置外,还需要注意其他一些问题,比如设置一张大的背景图片内存占用和释放等.还有它的拓展性方面,像圆角图片.圆形图片.图片边框等等.因此,如果想熟练使用这个控件,就需要对其实现的机制有一个基本的了解. ImageView也是直接继承于View类,主要的结构图如下: 鉴于篇幅大小

Android ImageView 不显示JPEG图片 及 Android Studio中怎样引用图片资源

Android ImageView 不显示JPEG图片 今天在写一个小实例,ImageView在xml里面设置的是INVISIBLE,在代码里须要设置成setVisibility(View.VISIBLE),但图片没有显示出来,换成PNG或其他的JPEG格式的图片确能够正常的显示. 原因:显示的图片大小为5.39K,图片格式有损坏,所以不能正常显示. 解决:换一张图片.或又一次生成JPEG图片. 假设还是不能正常显示,建议在设置完VISIBLE后,调用例如以下方法: iv.setVisibili

Android ImageView 不显示JPEG图片 及 Android Studio中如何引用图片资源

Android ImageView 不显示JPEG图片 今天在写一个小实例,ImageView在xml里面设置的是INVISIBLE,在代码里需要设置成setVisibility(View.VISIBLE),但图片没有显示出来,换成PNG或其它的JPEG格式的图片确可以正常的显示. 原因:显示的图片大小为5.39K,图片格式有损坏,所以不能正常显示. 解决:换一张图片,或重新生成JPEG图片. 如果还是不能正常显示,建议在设置完VISIBLE后,调用如下方法: iv.setVisibility(

Android ImageView 的 ScaleType 属性

Android ImageView 的 ScaleType 属性用来表示图片的显示方式.总共有8种取值,取值的范围定义在 android.widget.ImageView.ScaleType 这个枚举类型里. ImageView.ScaleType.CENTER : 居中,但不缩放.图片超出控件的部分不显示,小于控件的部分就留白.Center the image in the view , but perform no scaling . ImageView.ScaleType.CENTER_C

基于开源框架Glide加载Gif资源图到Android ImageView中

<基于第三方开源框架Android Glide加载Gif资源图片到Android ImageView中> 通常Android的ImageView不能加载Gif图片,如不做任何处理,那么加载到ImageView中的Gif只显示第一帧.网上给出很多解决方案,也有不少开源框架定制专属的Gif View用于加载Gif图,这些解决方案基本上大多数是借助Android的Movie,把Gif图片资源作为流,解析成Android Movie显示,这些定制的基本思想就是先检测该图片资源是否是Gif图,若是,则按