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 用矩阵来绘制

区别效果图:

 

代码:

  1 <ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
  2     xmlns:tools="http://schemas.android.com/tools"
  3     android:layout_width="match_parent"
  4     android:layout_height="match_parent"
  5     android:background="#00000000"
  6     android:scrollbars="vertical"
  7     tools:context="com.example.imageviewsrcandbg.MainActivity" >
  8
  9     <LinearLayout
 10         android:layout_width="match_parent"
 11         android:layout_height="wrap_content"
 12         android:orientation="vertical" >
 13
 14         <TextView
 15             android:layout_width="wrap_content"
 16             android:layout_height="wrap_content"
 17             android:text="1、ImageViewd的src和background的区别:" />
 18
 19         <TextView
 20             android:layout_width="wrap_content"
 21             android:layout_height="wrap_content"
 22             android:text="(1)background会根据ImageView组件给定的长宽进行拉伸,而src就存放的是原图的大小,不会进行拉伸。如果想要对src进行拉伸的话,使用android:scaleType" />
 23         <!-- =============================================================== -->
 24         <TextView
 25             android:layout_width="wrap_content"
 26             android:layout_height="wrap_content"
 27             android:text="(1.1)固定的宽高(100*60)ImageView控件background,图片是66" />
 28
 29         <!-- 固定的宽高ImageView控件 -->
 30
 31         <ImageView
 32             android:layout_width="100dp"
 33             android:layout_height="60dp"
 34             android:background="@drawable/load_circle" />
 35         <!-- =============================================================== -->
 36         <TextView
 37             android:layout_width="wrap_content"
 38             android:layout_height="wrap_content"
 39             android:text="(1.2)固定的宽高(100*60)ImageView控件src,图片是66" />
 40
 41         <!-- 固定的宽高ImageView控件 -->
 42
 43         <ImageView
 44             android:layout_width="100dp"
 45             android:layout_height="60dp"
 46             android:src="@drawable/load_circle" />
 47         <!-- =============================================================== -->
 48         <!-- src和background的结合使用 -->
 49
 50         <TextView
 51             android:layout_width="wrap_content"
 52             android:layout_height="wrap_content"
 53             android:text="(2)固定的宽高(100*60)ImageView控件src是图片内容(前景),bg是背景,可以同时使用。" />
 54         <!-- 固定的宽高ImageView控件 -->
 55
 56         <ImageView
 57             android:layout_width="100dp"
 58             android:layout_height="60dp"
 59             android:background="@drawable/load_circle"
 60             android:src="@drawable/load_logo" />
 61         <!-- =============================================================== -->
 62          <!-- src的拉伸:scaleType -->
 63
 64         <TextView
 65             android:layout_width="wrap_content"
 66             android:layout_height="wrap_content"
 67             android:text="(3)scaleType只对src起作用,对src进行拉伸(固定的宽高(100*60)ImageView控件)" />
 68
 69         <TextView
 70             android:layout_width="wrap_content"
 71             android:layout_height="wrap_content"
 72             android:text="(3.1)CENTER /center 在视图中心显示图片,并且不缩放图片" />
 73
 74         <!-- 固定的宽高ImageView控件 -->
 75         <ImageView
 76             android:layout_width="100dp"
 77             android:layout_height="60dp"
 78             android:src="@drawable/load_circle"
 79             android:scaleType="center"
 80              />
 81         <!-- =============================================================== -->
 82         <TextView
 83             android:layout_width="wrap_content"
 84             android:layout_height="wrap_content"
 85             android:text="(3.2)CENTER_CROP / centerCrop 按比例缩放图片,使得图片长 (宽)的大于等于视图的相应维度" />
 86
 87         <!-- 固定的宽高ImageView控件 -->
 88         <ImageView
 89             android:layout_width="100dp"
 90             android:layout_height="60dp"
 91             android:src="@drawable/load_circle"
 92             android:scaleType="centerCrop"
 93              />
 94         <!-- =============================================================== -->
 95         <TextView
 96             android:layout_width="wrap_content"
 97             android:layout_height="wrap_content"
 98             android:text="(3.3)CENTER_INSIDE / centerInside 按比例缩放图片,使得图片长 (宽)的小于等于视图的相应维度" />
 99
100         <!-- 固定的宽高ImageView控件 -->
101         <ImageView
102             android:layout_width="100dp"
103             android:layout_height="60dp"
104             android:src="@drawable/load_circle"
105             android:scaleType="centerInside"
106              />
107         <!-- =============================================================== -->
108         <TextView
109             android:layout_width="wrap_content"
110             android:layout_height="wrap_content"
111             android:text="(3.4)FIT_CENTER / fitCenter 按比例缩放图片到视图的最小边,居中显示" />
112
113         <!-- 固定的宽高ImageView控件 -->
114         <ImageView
115             android:layout_width="100dp"
116             android:layout_height="60dp"
117             android:src="@drawable/load_circle"
118             android:scaleType="fitCenter"
119              />
120         <!-- =============================================================== -->
121         <TextView
122             android:layout_width="wrap_content"
123             android:layout_height="wrap_content"
124             android:text="(3.5)FIT_END / fitEnd 按比例缩放图片到视图的最小边,显示在视图的下部分位置——短边的下面或者右面" />
125
126         <!-- 固定的宽高ImageView控件 -->
127         <ImageView
128             android:layout_width="100dp"
129             android:layout_height="60dp"
130             android:src="@drawable/load_circle"
131             android:scaleType="fitEnd"
132              />
133         <!-- =============================================================== -->
134         <TextView
135             android:layout_width="wrap_content"
136             android:layout_height="wrap_content"
137             android:text="(3.6)FIT_START / fitStart 把图片按比例扩大/缩小到视图的最小边,显示在视图的上部分位置——短边的上面或者左面" />
138
139         <!-- 固定的宽高ImageView控件 -->
140         <ImageView
141             android:layout_width="100dp"
142             android:layout_height="60dp"
143             android:src="@drawable/load_circle"
144             android:scaleType="fitStart"
145              />
146         <!-- =============================================================== -->
147         <TextView
148             android:layout_width="wrap_content"
149             android:layout_height="wrap_content"
150             android:text="(3.7)FIT_XY / fitXY 把图片不按比例缩放到视图的大小显示——类似background" />
151
152         <!-- 固定的宽高ImageView控件 -->
153         <ImageView
154             android:layout_width="100dp"
155             android:layout_height="60dp"
156             android:src="@drawable/load_circle"
157             android:scaleType="fitXY"
158              />
159         <!-- =============================================================== -->
160         <TextView
161             android:layout_width="wrap_content"
162             android:layout_height="wrap_content"
163             android:text="(3.8)MATRIX / matrix 用矩阵来绘制——左上角开始绘制" />
164
165         <!-- 固定的宽高ImageView控件 -->
166         <ImageView
167             android:layout_width="100dp"
168             android:layout_height="60dp"
169             android:src="@drawable/load_circle"
170             android:scaleType="matrix"
171              />
172     </LinearLayout>
173
174 </ScrollView>

activity_mian.xml

 素材(采用的是京东的loading图片):

时间: 2024-08-04 03:59:29

ImageView的src和background的区别的相关文章

【android】ImageView的src和background的区别以及两者的妙用

一.ImageView中XML属性src和background的区别: background会根据ImageView组件给定的长宽进行拉伸,而src就存放的是原图的大小,不会进行拉伸 .src是图片内容(前景),bg是背景,可以同时使用. 此外: scaleType只对src起作用:bg可设置透明度,比如在ImageButton中就可以用android:scaleType控制图片的缩放方式 二. 解决android:background背景图片被拉伸问题 : 如上所述,background设置的

android中src和background的区别

ImageView中XML属性src和background的区别: background会根据ImageView组件给定的长宽进行拉伸,而src就存放的是原图的大小,不会进行拉伸.src是图片内容(前景),bg是背景,可以同时使用. 此外:scaleType只对src起作用:bg可设置透明度,比如在ImageButton中就可以用android:scaleType控制图片的缩放方式,示例代码如下: <ImageView android:id="@+id/img"     andr

android的Imageview的src和background

android中src和background区别 ImageView中XML属性src和background的区别: background会根据ImageView组件给定的长宽进行拉伸,而src就存放的是原图的大小,不会进行拉伸.src是图片内容(前景),bg是背景,可以同时使用. 此外:scaleType只对src起作用:bg可设置透明度,比如在ImageButton中就可以用android:scaleType控制图片的缩放方式,示例代码如下: <ImageView android:id=&quo

ImageView的src与background

1 概述 开发中经常使用Imageview的src和background属性,从字面上看src是路径,background是背景.二者都可以显示drawable或者颜色.设置drawable图片资源时,会有所不同. 2 android:background属性 若background设置的是图片: 如果宽或高设置为match_parent或者固定值,那么该图片会被拉伸以填满整个ImageView区域. 如果宽或高设置为wrap_content,那么图片按照自身大小显示,不会被拉伸. 代码设置ba

Android中ImageView属性src和background的几点区别

明确几点: 1.src是指的图片想显示的内容,是你的关注点 2.background是指的图片的背景,一般不是关注点 举个例子:一张海报贴在一面墙上,那么src就是这张海报,后面的那面墙就是background 3.ImageView中调用的setImageXxx()方法,设置的图片都是设置的src,想要设置背景请用setBackground()方法. 所以,一般需要变换的内容,都会设置成src 4.设置margine和padding值对于src和background的影响也是不一样的. mar

android中src和background区别

ImageView中XML属性src和background的区别: background会根据ImageView组件给定的长宽进行拉伸,而src就存放的是原图的大小,不会进行拉伸.src是图片内容(前景),bg是背景,可以同时使用. 此外:scaleType只对src起作用:bg可设置透明度,比如在ImageButton中就可以用android:scaleType控制图片的缩放方式, 示例代码如下: 1 <ImageView 2 android:id="@+id/img" 3 a

Android自学笔记之ImageView的特殊属性及同为背景属性的src、background区别

1.android:orientation 垂直摆放: 2.ImageView 中的src属性和background属性的区别: src的尺寸不随控件大小而改变,只是引用图片 background的尺寸始终和控件大小相同,类似填充效果,把图片塞满控件 src和background可共存在同一个控件中 版权声明:本文为博主原创文章,未经博主允许不得转载.

[转]android中OnTouch和OnClick、 imagebutton的src和background有什么区别

1.OnTouch和OnClick有何区别? 专业回答 1.onClick就传入一个View对象,而 onTouch要传入一个View 对象和 MotionEvent的对象2.onTouch对控件的操作比onCilck更丰富,比如判断触摸的状态(比如按下,或者放开),和得到点击的位置等等3.当对一个控件触摸的时候touch 先调用, onclick是 对 touch 的一个扩展实现 2.imagebutton的src和background有什么区别呢? 专业回答 2013-07-23 09:43

Android实习札记(10)---ImageView的src属性 VS blackground属性

Android实习札记(10)---ImageView的src属性 VS blackground属性                                                                              转载请注明出处:coder-pig 问题分析 相信大家对于ImageView图片组件并不陌生吧,见名知意,就是用来显示图片的咯! 而显示图片的话可以通过src属性,又或者blackground属性来进行设置! 这些大家都知道,但是有没有去纠结下