1 概述

开发中经常使用Imageview的src和background属性,从字面上看src是路径,background是背景。二者都可以显示drawable或者颜色。设置drawable图片资源时,会有所不同。

2 android:background属性

若background设置的是图片:

  • 如果宽或高设置为match_parent或者固定值,那么该图片会被拉伸以填满整个ImageView区域。
  • 如果宽或高设置为wrap_content,那么图片按照自身大小显示,不会被拉伸。

代码设置background:

  • image.setBackground(getResources().getDrawable(R.drawable.blackk));
  • image.setBackgroundResource(R.drawable.blackk);
  • image.setBackgroundDrawable(getResources().getDrawable(R.drawable.blackk));

以上方法调用的都是setBackgroudDrawable()。

3 android:src属性

设置为颜色时表现同backgroud属性,设置为图片时,表现受到imageview的大小和scaleType的影响。当没有设置scaleType时,默认使用FIT_CENTER。

scaleType的几种表现形式:

center:不缩放,按照原图显示,且与imageview居中对齐。不推荐

centerCrop:保持宽高比进行缩放,直到原图宽或者高都大于ImageView宽高时,从居中部分截取图片填充ImageView。使得图片完全覆盖ImageView。图片可能显示不全。不推荐

centerInside:保持宽高比进行缩放,直到原图宽或者高都小于ImageView宽高时,从居中部分截取图片填充ImageView。使得Imageview完全显示该图片

fitStart:保持宽高比,完全填充x方向或者y方向。同时与ImageView的左边和上边对齐。

fitEnd:保持宽高比,完全填充x方向或者y方向。同时与ImageView的右边和下边对齐。

fitCenter:保持宽高比,完全填充x方向或者y方向,缩放完成显示在ImageView中央。图片可能不完全填充ImageView。当图片小于Imageview宽高时,会有放大填充效果。默认使用fitCenter

fitXY:该属性会在X,Y轴上分别进行缩放,使图片完全填充Imageview。类似background属性。

matrix:可以实现一些图像变换,暂不研究

4 总结

使用android:src 为ImageView设置内容。设置了src属性时,其内容的填充方式可以通过android:scaleType方式设置。

当图片宽高大于imageview时,推荐使用:fitCenter, centerInside。

当图片宽高小于imageview时,推荐使用: centerInside。

ImageView的src与background及ScaleType的更多相关文章

  1. ImageView的src和background的区别

    参考资料: http://blog.csdn.net/dalleny/article/details/14048375 http://www.android100.org/html/201508/27 ...

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

    一.ImageView中XML属性src和background的区别: background会根据ImageView组件给定的长宽进行拉伸,而src就存放的是原图的大小,不会进行拉伸 .src是图片内 ...

  3. 【android】ImageView的src和background以及两者之间的神奇的差异

    一.ImageView中XML属性src和background的差别: background会依据ImageView组件给定的长宽进行拉伸.而src就存放的是原图的大小,不会进行拉伸.src是图片内容 ...

  4. Android 代码里设置ImageView的src和background

    设置ImageView的src: image.setImageDrawable(getResources().getDrawable(R.drawable.blackk)); String path= ...

  5. ImageView中XML属性src和background的区别

    background会根据ImageView组件给定的长宽进行拉伸,而src就存放的是原图的大小,不会进行拉伸. src是图片内容(前景),bg是背景,可以同时使用. 此外:scaleType只对sr ...

  6. 【Android 界面效果32】ImageView中XML属性src和background的区别

    background会根据ImageView组件给定的长宽进行拉伸,而src就存放的是原图的大小,不会进行拉伸. src是图片内容(前景),bg是背景,可以同时使用. 此外:scaleType只对sr ...

  7. android imageview使用的时候 引用资源src和background的区别

    android imageview使用的时候 引用资源时src和background的区别 src更强调内容并且不行拉伸图片进行适配,而background更注重引用图片,会对图片进行拉伸

  8. [android界面]android中src和background区别——前景与背景

    ImageView中XML属性src和background的区别: background会根据ImageView组件给定的长宽进行拉伸,而src就存放的是原图的大小,不会进行拉伸.src是图片内容(前 ...

  9. android中src和background区别

    background会根据ImageView组件给定的长宽进行拉伸,而src就存放的是原图的大小,不会进行拉伸.src是图片内容(前景),bg是背景,可以同时使用. 此外:scaleType只对src ...

随机推荐

  1. 一、JVM — Java内存区域

    Java 内存区域详解 写在前面 (常见面试题) 基本问题 拓展问题 一 概述 二 运行时数据区域 2.1 程序计数器 2.2 Java 虚拟机栈 2.3 本地方法栈 2.4 堆 2.5 方法区 2. ...

  2. 6-1 如何读写csv数据

    >>> from urllib import urlretrieve >>> urlretrieve('http://table.finance.yahoo.com ...

  3. 网络爬虫之HTTPClient

    HTTPClient官网:http://hc.apache.org/httpcomponents-client-4.5.x/quickstart.html 问题一:明明浏览器请求有数据,可使用HTTP ...

  4. 百度网盘SVIP不限速Mac破解版(亲测可用)

    百度网盘SVIP不限速Mac破解版(亲测可用),按照教程一步一步来就可以了,链接如下: https://mac.orsoon.com/Mac/166358.html?id=ODY0MDA2Jl8mMT ...

  5. 用HTTP核心模块配置一个静态Web服务器

    静态Web服务器的主要功能由ngx_http_core_module模块(HTTP框架的主要成员)实现与core模块类似,可以根据相关模块(如ngx_http_gzip_filter_module.n ...

  6. bzoj3631: [JLOI2014]松鼠的新家(树上差分)

    题目链接:https://www.lydsy.com/JudgeOnline/problem.php?id=3631 题目大意:给定含有n个顶点的树,给定走遍整棵树顺序的序列a[1],a[2],a[3 ...

  7. Spring Boot日志处理

    2.4 日志处理 2.4.1 记录日志内容 请求url 访问者ip 调用方法classMethod 参数args 返回内容 2.4.2 新建包aspect,新建日志切面处理类 package com. ...

  8. python 使用wxpy实现获取微信好友列表 头像 群成员

    最近在学习 python 突然想要试试能不能把微信里面的微信群和好友取出来 结果百度了一下 找到了 wxpy 这怎么能不试一下呢 用到 wxpy.threading.os.time 四个库 第一步 判 ...

  9. window.open()的实际应用

    Window open() 方法 定义和用法 open() 方法用于打开一个新的浏览器窗口或查找一个已命名的窗口. 语法 window.open(URL,name,specs,replace) 参数 ...

  10. [BZOJ3714] Kuglarz

    问题描述 魔术师的桌子上有n个杯子排成一行,编号为1,2,-,n,其中某些杯子底下藏有一个小球,如果你准确地猜出是哪些杯子,你就可以获得奖品.花费c_ij元,魔术师就会告诉你杯子i,i+1,-,j底下 ...