ImageView的src与background及ScaleType
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的更多相关文章
- ImageView的src和background的区别
参考资料: http://blog.csdn.net/dalleny/article/details/14048375 http://www.android100.org/html/201508/27 ...
- 【android】ImageView的src和background的区别以及两者的妙用
一.ImageView中XML属性src和background的区别: background会根据ImageView组件给定的长宽进行拉伸,而src就存放的是原图的大小,不会进行拉伸 .src是图片内 ...
- 【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 imageview使用的时候 引用资源src和background的区别
android imageview使用的时候 引用资源时src和background的区别 src更强调内容并且不行拉伸图片进行适配,而background更注重引用图片,会对图片进行拉伸
- [android界面]android中src和background区别——前景与背景
ImageView中XML属性src和background的区别: background会根据ImageView组件给定的长宽进行拉伸,而src就存放的是原图的大小,不会进行拉伸.src是图片内容(前 ...
- android中src和background区别
background会根据ImageView组件给定的长宽进行拉伸,而src就存放的是原图的大小,不会进行拉伸.src是图片内容(前景),bg是背景,可以同时使用. 此外:scaleType只对src ...
随机推荐
- 6.float类型 和 char 类型
float32 float64 package main import "fmt" func main() { var xxx float32 var xxxx float64 ...
- 什么场景下用redis而不用mysql?
redis我们用作缓存,对查询速度要求比较高的应用场景比较适合.对有复杂逻辑关系的存储不适合. mysql是硬盘存储的,在高性能io要求的项目里不能满足需求,而redis所有数据存在内存里,因此要快得 ...
- 动态规划(股票交易)---只能进行 k 次的股票交易
只能进行 k 次的股票交易 188. Best Time to Buy and Sell Stock IV (Hard) 题目描述: 只能进行K次股票交易,求能获得的最大利润 思路分析: 和只 ...
- php strpos() 函数介绍与使用方法详解
本文主要和大家介绍PHP中mb_strpos的使用技巧,通过使用语法以及实例给大家详细分析了用法,需要的朋友参考学习下.希望能帮助到大家.mb_strpos(PHP 4 >= 4.0.6, PH ...
- Java全排列递归算法
Java全排列算法: 第一遍循环:将list数组index==0的元素依次与数组的每个元素交换,从而保证index==0的位置先后出现n个不同元素之一,实现对index==0位置的遍历. 第 i 遍循 ...
- MySQL中Innodb的聚簇索引和非聚簇索引
聚簇索引 数据库表的索引从数据存储方式上可以分为聚簇索引和非聚簇索引(又叫二级索引)两种.Innodb的聚簇索引在同一个B-Tree中保存了索引列和具体的数据,在聚簇索引中,实际的数据保存在叶子页中, ...
- C功能模块集锦
1. offsetof #include <stddef.h> size_t offsetof(type, member); The macro offsetof() returns th ...
- 16 | “order by”是怎么工作的? 学习记录
<MySQL实战45讲>16 | “order by”是怎么工作的? 学习记录http://naotu.baidu.com/file/0be0e0acdf751def1c0ce66215e ...
- 前端每日实战:16# 视频演示如何用纯 CSS 创作一个渐变色动画边框
效果预览 按下右侧的"点击预览"按钮可以在当前页面预览,点击链接可以全屏预览. https://codepen.io/comehope/pen/odpRKX 可交互视频教程 此视频 ...
- 花式赋值、列表、字典、解压缩、input()、格式化学习笔记
目录 花式赋值 列表(list) 字典(dict) 解压缩 input()与用户交互 格式化的三种方式 f_String格式化(important) %s.%d占位符 format 格式化(不常用) ...