Android中ImageView的属性
资源使用
Android 中支持三种格式的位图文件:.png(首选), .jpg(可接受),.gif(不建议)
为什么首推 PNG 呢?
官网的描述如下:
注:在构建过程中,可通过 aapt 工具自动优化位图文件,对图像进行无损压缩。例如,不需要超过 256 色的真彩色 PNG 可通过调色板转换为 8 位 PNG。这样产生的图像质量相同,但所需内存更少。因此请注意,此目录中的图像二进制文件在构建时可能会发生变化。如果您计划将图像解读为比特流以将其转换为位图,请改为将图像放在 res/raw/ 文件夹中,在那里它们不会进行优化。
在 resource 中存放有以下图片
res/drawable/myimage.png
ImageView imageView = (ImageView) findViewById(R.id.myimageview);
imageView.setImageResource(R.drawable.myimage);
可见性
ImageView 继承于 android.view.View,因此也可以通过 setVisibility(int) 设置它的可见性。入参为以下3个值
- GONE
完全被隐藏,现象如该 view 没有被添加一样。
- INVISIBLE
仅仅不显示,但是它依旧会在 layout 中占据空间
- VISIBLE
显示,默认值就为该值
imageView.setVisibility(View.VISIBLE);
android:scaleType
设置图片的比例或移动来适应 ImageView 的大小
setScaleType(ImageView.ScaleType)
or
android:scaleType="center"
- CENTER
放在 view 的中央,不进行缩放。如果图片大小大于 ImageView 控件,则截取图片中间部分,若小于则直接将图片进行显示
- CENTER_CROP
按比例进行缩放, 这样图片的尺寸可能会大于等于当前 view 的尺寸, 然后将其放在 view 的中央。让图片的短边与 ImageView 的边长度相同,即不能留有空白,缩放后截取中间部分进行显示。
- CENTER_INSIDE
将图片大小大于ImageView的图片进行等比例缩小,直到整幅图能够居中显示在ImageView中,小于ImageView的图片不变,直接居中显示。
- FIT_CENTER
大图等比例缩小,使得整个图能全部放入 view 中进行居中显示,小图等比例放大,并且整体居中显示在 ImageView 中
- FIT_END
缩放方式同FIT_CENTER,只是将图片显示在右方或下方,而不是居中
- FIT_START
缩放方式同FIT_CENTER,只是将图片显示在左方或上方,而不是居中
- FIT_XY
将图片非等比例缩放到大小与ImageView相同。
- MATRIX
通过矩阵方式控制图片的缩放和旋转, 并涉及到以下接口 setImageMatrix(Matrix)
参考文章
Android中ImageView的属性的更多相关文章
- Android中ImageView.ScaleType属性值
1 android:scaleType="center" (1)当图片大于ImageView的宽高:以图片的中心点和ImageView的中心点为基准,按照图片的原大小居中显示,不缩 ...
- android中ImageView的ScaleType属性
android中ImageView的ScaleType属性 ScaleType的值分别代表的意义: ImageView是Android中的基础图片显示控件,该控件有个重要的属性是ScaleType,该 ...
- Android中的windowSoftInputMode属性详解
这篇文章主要介绍了Android中的windowSoftInputMode属性详解,本文对windowSoftInputMode的9个属性做了详细总结,需要的朋友可以参考下 在前面的一篇文章中 ...
- android中xml tools属性详解
第一部分 安卓开发中,在写布局代码的时候,ide可以看到布局的预览效果. 但是有些效果则必须在运行之后才能看见,比如这种情况:TextView在xml中没有设置任何字符,而是在activity中设置了 ...
- android中xmlns:tools属性详解
今天读到一篇总结的非常棒的文章,写的逻辑很清晰也很实用,很少见到如此棒的文章了.就原文转发过来,我把格式给整理了一下,分享给园子里的各位朋友!好久没写博客了,就为2015年的11月留份纪念吧.希望对你 ...
- android中xml tools属性详解(转)
第一部分 安卓开发中,在写布局代码的时候,ide可以看到布局的预览效果. 但是有些效果则必须在运行之后才能看见,比如这种情况:TextView在xml中没有设置任何字符,而是在activity中设置了 ...
- Android 中自定义控件和属性(attr.xml,declare-styleable,TypedArray)的方法和使用
一. 在res/values 文件下定义一个attrs.xml 文件.代码如下: <?xml version="1.0" encoding="utf-8" ...
- Android笔记(六十五) android中的动画——属性动画(propertyanimation)
补间动画只能定义起始和结束两个帧在“透明度”.“旋转”.“倾斜”.“位移”4个方面的变化,逐帧动画也只能是播放多个图片,无法满足我们日常复杂的动画需求,所以谷歌在3.0开始,推出了属性动画(prope ...
- Android中的sharedUserId属性详解
在Android里面每个app都有一个唯一的linux user ID,则这样权限就被设置成该应用程序的文件只对该用户可见,只对该应用程序自身可见,而我们可以使他们对其他的应用程序可见,这会使我们用到 ...
随机推荐
- c/c++排坑(3) -- c/c++中的switch语句
switch语句的简单介绍 一个 switch 语句允许测试一个变量等于多个值时的情况.每个值称为一个 case,且被测试的变量会对每个 switch case 进行检查. switch(expres ...
- 使用scrapy爬取的数据保存到CSV文件中,不使用命令
pipelines.py文件中 import codecs import csv # 保存到CSV文件中 class CsvPipeline(object): def __init__(self): ...
- 获取springbean的几种方式
首先我说一下我遇到的问题,再项目初始化时候,spring容器初始化前要执行的操作中使用到了bean去做一些增删改查操作,这样做是不能自己使用springbean的数据源去操作的,所以需要动态获取spr ...
- 《零压力学Python》 之 第二章知识点归纳
第二章(数字)知识点归纳 要生成非常大的数字,最简单的办法是使用幂运算符,它由两个星号( ** )组成. 如: 在Python中,整数是绝对精确的,这意味着不管它多大,加上1后都将得到一个新的值.你将 ...
- JavaScript单元测试工具-Jest
标注: 首先这并不是一篇完整的关于Jest的教程,只是个人在接触jest学习的一点随手笔记,大部分内容都是对官方文档的一些翻译. ----------------------------------- ...
- 几个有用的shell命令
1.!$ 是一个特殊的环境变量,它代表了上一个命令的最后一个字符串.如:你可能会这样: $mkdir mydir$mv mydir yourdir$cd yourdir 可以改成: $mkdir my ...
- Object Detection: To Be Higher Accuracy and Faster
本系列文章由 @yhl_leo 出品,转载请注明出处. 文章链接: http://blog.csdn.net/yhl_leo/article/details/51597496 在深度学习中有一类研究热 ...
- Linux中安装MongoDB出现的问题记录
mongoDB安装完成后,运行sudo service mongod start 查看程序状态:ps ajx | grep mongod ,启动失败 查看失败信息提示,终端命令:tail -f / ...
- [Cypress] Create True end-to-end Tests with Cypress (Smoke test)
Integration tests let us keep our tests fast and reliable. They also allow us to test scenarios that ...
- IIS发布后出现“如果在安装 32 位 Oracle 客户端组件的情况下以 64 位模式运行,将出现此问题”错误
VS2010运行程序没有任何问题,但是发布到IIS以后,连接数据库时报错:“尝试加载 Oracle 客户端库时引发 BadImageFormatException.如果在安装 32 位 Oracle ...