ImageView的src和background的区别
参考资料:
http://blog.csdn.net/dalleny/article/details/14048375
http://www.android100.org/html/201508/27/177067.html
区别如下:
1、 background会根据ImageView组件给定的长宽进行拉伸,而src就存放的是原图的大小,不会进行拉伸,如果想要对src进行拉伸的话,使用android:scaleType
2、 src是图片内容(前景),bg是背景,可以同时使用。
3、 此外:scaleType只对src起作用;bg可设置透明度
4、 Src对应的Java代码是:imgView.setImageResource(R.drawable.*)
Background对应的Java代码是:imgView.setBackgroundResource(R.drawable.*);
5、 scaleType说明
CENTER /center 在视图中心显示图片,并且不缩放图片
CENTER_CROP / centerCrop 按比例缩放图片,使得图片长 (宽)的大于等于视图的相应维度
CENTER_INSIDE / centerInside 按比例缩放图片,使得图片长 (宽)的小于等于视图的相应维度
FIT_CENTER / fitCenter 按比例缩放图片到视图的最小边,居中显示
FIT_END / fitEnd 按比例缩放图片到视图的最小边,显示在视图的下部分位置
FIT_START / fitStart 把图片按比例扩大/缩小到视图的最小边,显示在视图的上部分位置
FIT_XY / fitXY 把图片不按比例缩放到视图的大小显示
MATRIX / matrix 用矩阵来绘制
区别效果图:

代码:
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#00000000"
android:scrollbars="vertical"
tools:context="com.example.imageviewsrcandbg.MainActivity" > <LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical" > <TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="1、ImageViewd的src和background的区别:" /> <TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="(1)background会根据ImageView组件给定的长宽进行拉伸,而src就存放的是原图的大小,不会进行拉伸。如果想要对src进行拉伸的话,使用android:scaleType" />
<!-- =============================================================== -->
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="(1.1)固定的宽高(100*60)ImageView控件background,图片是66" /> <!-- 固定的宽高ImageView控件 --> <ImageView
android:layout_width="100dp"
android:layout_height="60dp"
android:background="@drawable/load_circle" />
<!-- =============================================================== -->
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="(1.2)固定的宽高(100*60)ImageView控件src,图片是66" /> <!-- 固定的宽高ImageView控件 --> <ImageView
android:layout_width="100dp"
android:layout_height="60dp"
android:src="@drawable/load_circle" />
<!-- =============================================================== -->
<!-- src和background的结合使用 --> <TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="(2)固定的宽高(100*60)ImageView控件src是图片内容(前景),bg是背景,可以同时使用。" />
<!-- 固定的宽高ImageView控件 --> <ImageView
android:layout_width="100dp"
android:layout_height="60dp"
android:background="@drawable/load_circle"
android:src="@drawable/load_logo" />
<!-- =============================================================== -->
<!-- src的拉伸:scaleType --> <TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="(3)scaleType只对src起作用,对src进行拉伸(固定的宽高(100*60)ImageView控件)" /> <TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="(3.1)CENTER /center 在视图中心显示图片,并且不缩放图片" /> <!-- 固定的宽高ImageView控件 -->
<ImageView
android:layout_width="100dp"
android:layout_height="60dp"
android:src="@drawable/load_circle"
android:scaleType="center"
/>
<!-- =============================================================== -->
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="(3.2)CENTER_CROP / centerCrop 按比例缩放图片,使得图片长 (宽)的大于等于视图的相应维度" /> <!-- 固定的宽高ImageView控件 -->
<ImageView
android:layout_width="100dp"
android:layout_height="60dp"
android:src="@drawable/load_circle"
android:scaleType="centerCrop"
/>
<!-- =============================================================== -->
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="(3.3)CENTER_INSIDE / centerInside 按比例缩放图片,使得图片长 (宽)的小于等于视图的相应维度" /> <!-- 固定的宽高ImageView控件 -->
<ImageView
android:layout_width="100dp"
android:layout_height="60dp"
android:src="@drawable/load_circle"
android:scaleType="centerInside"
/>
<!-- =============================================================== -->
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="(3.4)FIT_CENTER / fitCenter 按比例缩放图片到视图的最小边,居中显示" /> <!-- 固定的宽高ImageView控件 -->
<ImageView
android:layout_width="100dp"
android:layout_height="60dp"
android:src="@drawable/load_circle"
android:scaleType="fitCenter"
/>
<!-- =============================================================== -->
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="(3.5)FIT_END / fitEnd 按比例缩放图片到视图的最小边,显示在视图的下部分位置——短边的下面或者右面" /> <!-- 固定的宽高ImageView控件 -->
<ImageView
android:layout_width="100dp"
android:layout_height="60dp"
android:src="@drawable/load_circle"
android:scaleType="fitEnd"
/>
<!-- =============================================================== -->
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="(3.6)FIT_START / fitStart 把图片按比例扩大/缩小到视图的最小边,显示在视图的上部分位置——短边的上面或者左面" /> <!-- 固定的宽高ImageView控件 -->
<ImageView
android:layout_width="100dp"
android:layout_height="60dp"
android:src="@drawable/load_circle"
android:scaleType="fitStart"
/>
<!-- =============================================================== -->
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="(3.7)FIT_XY / fitXY 把图片不按比例缩放到视图的大小显示——类似background" /> <!-- 固定的宽高ImageView控件 -->
<ImageView
android:layout_width="100dp"
android:layout_height="60dp"
android:src="@drawable/load_circle"
android:scaleType="fitXY"
/>
<!-- =============================================================== -->
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="(3.8)MATRIX / matrix 用矩阵来绘制——左上角开始绘制" /> <!-- 固定的宽高ImageView控件 -->
<ImageView
android:layout_width="100dp"
android:layout_height="60dp"
android:src="@drawable/load_circle"
android:scaleType="matrix"
/>
</LinearLayout> </ScrollView>
activity_mian.xml
素材(采用的是京东的loading图片):


ImageView的src和background的区别的更多相关文章
- 【android】ImageView的src和background的区别以及两者的妙用
一.ImageView中XML属性src和background的区别: background会根据ImageView组件给定的长宽进行拉伸,而src就存放的是原图的大小,不会进行拉伸 .src是图片内 ...
- android imageview使用的时候 引用资源src和background的区别
android imageview使用的时候 引用资源时src和background的区别 src更强调内容并且不行拉伸图片进行适配,而background更注重引用图片,会对图片进行拉伸
- ImageView的src与background及ScaleType
1 概述 开发中经常使用Imageview的src和background属性,从字面上看src是路径,background是背景.二者都可以显示drawable或者颜色.设置drawable图片资源时 ...
- 【android】ImageView的src和background以及两者之间的神奇的差异
一.ImageView中XML属性src和background的差别: background会依据ImageView组件给定的长宽进行拉伸.而src就存放的是原图的大小,不会进行拉伸.src是图片内容 ...
- Android 代码里设置ImageView的src和background
设置ImageView的src: image.setImageDrawable(getResources().getDrawable(R.drawable.blackk)); String path= ...
- ImageView中XML属性src和background的区别
background会根据ImageView组件给定的长宽进行拉伸,而src就存放的是原图的大小,不会进行拉伸. src是图片内容(前景),bg是背景,可以同时使用. 此外:scaleType只对sr ...
- 【Android 界面效果32】ImageView中XML属性src和background的区别
background会根据ImageView组件给定的长宽进行拉伸,而src就存放的是原图的大小,不会进行拉伸. src是图片内容(前景),bg是背景,可以同时使用. 此外:scaleType只对sr ...
- [android界面]android中src和background区别——前景与背景
ImageView中XML属性src和background的区别: background会根据ImageView组件给定的长宽进行拉伸,而src就存放的是原图的大小,不会进行拉伸.src是图片内容(前 ...
- [转]android中OnTouch和OnClick、 imagebutton的src和background有什么区别
1.OnTouch和OnClick有何区别? 专业回答 1.onClick就传入一个View对象,而 onTouch要传入一个View 对象和 MotionEvent的对象2.onTouch对控件 ...
随机推荐
- ALAsset,ALAssetsLibrary,ALAssetsgroup常见属性及用法
转载自 http://www.cnblogs.com/javawebsoa/archive/2013/07/19/3201246.html ALAssetsgroup --------------- ...
- Ecshop 学习之路一 2016年6月30日
以前下载ecshop 都是在ecshop官网上下载,前后台模板都很难看.功能也不太齐全,这次在模板堂下载了ecshop 模板 仿小米的.做一个简单的电商网站. 页面结构还是挺简单的.功能也齐全.用ec ...
- 求一列的和,awk和perl哪个快?
下午和群里的朋友争论了一下,有关awk和perl处理文本的速度,自己一直比较推崇perl,对awk知之甚少,结果就想当然的觉得perl快,结果一番争吵后,觉得还是实验一下靠谱,(其实是想证明一下per ...
- Objective-C中的@property
1:@property 是什么? 在Objective-C中,@property 是声明属性的语法,它可以快速方便的为实例变量创建getter/setter方法. 2:@property 的本质? @ ...
- Call me, maybe?
Hey, I just met you, and this is crazy, but here's my number so call me, maybe? @Test public void te ...
- ASCII,GB2312,GBK,Unicode,Utf-8
1.ASCII:American Stardand Code for Information Interchange,是当时美国制定出来的一套编码系统,使用7位或8位二进制来表示西文字符,0-31以及 ...
- MRuby 编译笔记
专注于嵌入式脚本的MRuby在Windows下的编译笔记: 环境: OS: Windows 8.1, 使用 VS Express 2013 for Desktop. 材料: MRuby : 下载源码就 ...
- codeforce447 D SGU 548 贪心+优先队列
codeforce447 D - DZY Loves Modification 题意:有一个n*m的矩阵,每次可以选择一行或者一列,可以得到这行或这列的所有元素sum的积分,然后使这一列/行的每一个元 ...
- [Javascript] Functor law
Functor laws: 1. Identity: map(id) == id 2. Composition: compose(map(f), map(g)) == map(compose(f,g) ...
- phonegap 安装和使用eclipse
1.下载nodejs...然后注销让nodejs可用 2.下载jdk,ant.和安卓的sdk. jdk是为ant编译时需要,设置JAVA_HOME环境变量 C:\Program Files\Java\ ...