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对控件 ...
随机推荐
- rqnoj-396-SY学语文-dp
纯动态规划. 注意初始化为-INF #include<stdio.h> #include<algorithm> #include<iostream> #includ ...
- 【Python3】SMTP发送邮件
犹豫和反复浪费了大量时间. 与朋友言 在完成一个邮件发送程序之前我根本不明白什么是邮件,哪怕已经读过廖雪峰大神的文章,没有贬低大神的意思,大神的博客已经非常的详细, 是我的眼大肚皮小毛病在作祟,由一个 ...
- heidsoft logo
- twisted 安装时,安装顺序为 zope.interface ->twisted
最近想学 twisted ,就去下载 twisted 的windows版本,并且 安装.运行 twisted 例子后,发现出现了问题: ImportError: Twisted requires zo ...
- mac ide
常用IDE xcode sublime text eclipse xampp + phpstorm sql客户端:sequel pro 虚拟机:parallels desktop sftp客户端:Cy ...
- 简谈java的split
最近都在处理视频音频,今天在合成音频视频时为了给合成的新文件换个新名字,我打算获取了之前的视频名称,用split来分割出不带后缀的名字,再自己加上后缀. 众所周知split可以分割由某种字符分段的St ...
- hdu 5569 matrix dp
matrix Time Limit: 20 Sec Memory Limit: 256 MB 题目连接 http://acm.hdu.edu.cn/showproblem.php?pid=5569 D ...
- Office 365 Certificate Exam Resources
70-321 Deploying Office 365 Deploying Office 365 Jump Start (01): Infrastructure Planning Deploying ...
- 深入探讨this指针
深入探讨this指针 为了写这篇文章,准备了好长时间,翻遍了箱底的书籍.可是如今还是不敢放开手来写,战战兢兢.不是操心自己写错,而是唯恐自己错误误导别人.同一时候也希望这篇文章能给你一点收获.既然 ...
- Swift 3.0 的 open,public,internal,fileprivate,private 关键字
import Foundation /// final的含义保持不变 public final class FinalClass { } // 这个类在ModuleA的范围外是不能被继承的 ...