Android ImageView的scaleType(图片比例类型)属性与adjustViewBounds(调整视图边界)属性

本文转载自[Android ImageView的scaleType(图片比例类型)属性与adjustViewBounds(调整视图边界)属性]并做了排版的修改(http://www.cnblogs.com/xzbc/p/5098347.html)

Android ImageView的scaleType的属性可设置为matrix(默认)、center、centerCrop、centerInside、fitCenter、fitEnd、fitStart、fitXY

  • android:scaleType=”center”
    保持原图的大小,显示在ImageView的中心。当原图的size大于ImageView的size,超过部分裁剪处理。

  • android:scaleType=”centerCrop”
    以填满整个ImageView为目的,将原图的中心对准ImageView的中心,等比例放大原图,直到填满ImageView为止(指的是ImageView的宽和高都要填满),原图超过ImageView的部分作裁剪处理。

  • android:scaleType=”centerInside”
    以原图完全显示为目的,将图片的内容完整居中显示,通过按比例缩小原图的size宽(高)等于或小于ImageView的宽(高)。如果原图的size本身就小于ImageView的size,则原图的size不作任何处理,居中显示在ImageView。

  • android:scaleType=”matrix”
    不改变原图的大小,从ImageView的左上角开始绘制原图,原图超过ImageView的部分作裁剪处理。

  • android:scaleType=”fitCenter” 把原图按比例扩大或缩小到ImageView的ImageView的高度,居中显示

  • android:scaleType=”fitEnd”
    把原图按比例扩大(缩小)到ImageView的高度,显示在ImageView的下部分位置

  • android:scaleType=”fitStart”
    把原图按比例扩大(缩小)到ImageView的高度,显示在ImageView的上部分位置

  • android:scaleType=”fitXY”
    把原图按照指定的大小在View中显示,拉伸显示图片,不保持原比例,填满ImageView.

总结:很多人都觉得fitCenter和centerInside没有区别,根据上面的效果图来分析,其实是有区别的。fitCenter是将原图等比例放大或缩小,使原图的高度等于ImageView的高度,并居中显示,而centerInside在原图的原本size大于ImageView的size时,则缩小原图,效果同fitCenter;在原图的原本size小于ImageView的size时,则不进行任何size处理,居中显示,效果同center。

注:ImageView的android:adjustViewBounds属性为是否保持原图的长宽比,单独设置不起作用,需要配合maxWidth或maxHeight一起使用。

示例:图片保持原比例,防止拉伸

<ImageView
   android:id="@+id/image"android:layout_width="wrap_content"android:layout_height="wrap_content"android:adjustViewBounds="true"android:maxHeight="34dp"android:maxWidth="34dp"android:scaleType="centerInside" />

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/450171.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

阿里云@广东:让我们一起上云!

锅炉故障预测 预警准确率95%以上 利用算法模型进行制程能力的 综合分析与评估优化 提升定标效率 时间降低30% 构建垃圾焚烧发电工艺的优化算法模型 综合考虑环保和设备负荷因素 推荐最优工艺参数组合 优化人工操作&#xff0c;提高燃烧效率 中海油能源发展公司 石油钻探预测优化…

程序员的自我经营

程序员的自我经营之道第一层 从你决定迈出校门进入社会的那一刻起&#xff0c;你就进入了一个战场&#xff0c;这个战场虽然没有硝烟弥漫&#xff0c;没有炮火纷飞&#xff0c;但却绝不亚于任何一个真正的战场。你要在这个战场上去搏杀&#xff0c;去竞争&#xff0c;利用各种…

P3966 [TJOI2013]单词

\(\color{#0066ff}{ 题目描述 }\) 小张最近在忙毕设,所以一直在读论文。一篇论文是由许多单词组成但小张发现一个单词会在论文中出现很多次,他想知道每个单词分别在论文中出现了多少次。 \(\color{#0066ff}{输入格式}\) 第一行一个整数N,表示有N个单词。接下来N行每行一个单词,…

Android应用开发—RecyclerView绘制蒙层

背景&#xff1a;如何在跨越两个或两个以上的item绘制一个view&#xff0c;该view需要跟随recyclerView的滑动而整体移动。 Overridepublic void onDrawOver(Canvas c, RecyclerView parent, RecyclerView.State state) {super.onDrawOver(c, parent, state);final View child …

排序_3

希尔排序:分组排序 是把记录按下标的一定增量分组&#xff0c;对每组使用直接插入排序算法排序&#xff1b; 随着增量逐渐减少&#xff0c;每组包含的关键词越来越多&#xff0c;当增量减至1时&#xff0c;整个文件恰被分成一组&#xff0c;算法便终止。 def shell_sort(array)…

face++算法工程实习生面试

2018-01-11 算法工程实习生 自动化工具链方面 面试的知识点非常仔细&#xff0c;十分检验基本功底 1.自我介绍 2.算法题&#xff0c;leetcode 第一题 两数之和 问python中数组和字典的查找时间复杂度 3.git git 4.linux 常用命令 cd - ,cd ,cd ~,cd / awk 读取倒数第一行&a…

IDEA中怎么设置黑色或白色背景?

前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家。点击跳转到教程。 开启软件Intellij IDEA&#xff0c;在编辑框上面找到最前端的File。 点击File&#xff0c;找到Setting&#xff0c;点击进入。 然后在…

大公司体制内创新的困境

周末在家&#xff0c;随手翻看了一点吴军老师的《浪潮之巅》这本书。去年这本书上市之后我从头到尾阅读了一遍&#xff0c;在《浪潮之巅》中吴军老师历数了IT行业公司的兴衰发展史&#xff0c;提出了一个令人印象深刻的“基因决定论”&#xff0c;即由于公司基因的影响&#xf…

java打印调用堆栈的方式

Log.d(TAG,Log.getStackTraceString(new Throwable()));

weblogic jprofile配置

前提&#xff1a; 1.安装好weblogic 2.安装好jprofile 非等待模式&#xff1a; export JAVA_OPTIONS"${JAVA_OPTIONS} -Dweblogic.threadpool.MinPoolSize100 -Dweblogic.threadpool.MaxPoolSize1000 -Djava.awt.headlesstrue -agentpath:/opt/jprofiler9/bin/linux-x64/l…

springboot/git学习资源记录

前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家。点击跳转到教程。 只是记录一下觉得不错的资源&#xff1a; springboot: http://bbs.itmayiedu.com/article/1508826968799 http://blog.720ui.com/tags…

音视频引擎研究

音视频包&#xff1a;http://ishare.iask.sina.com.cn/f/33851582.html 1、WebRTC目的 WebRTC&#xff08;Web Real-Time Communication&#xff09;项目的最终目的主要是让Web开发者能够基于浏览器&#xff08;Chrome\FireFox\...&#xff09;轻易快捷开发出丰富的实时多媒体应…

我为什么“放弃”从事八年的嵌入式领域

由于嵌入式平台性能所限&#xff0c;以及相应的开发平台&#xff0c;工具&#xff0c;语言所限&#xff0c;导致很多前沿领域的软件工程理论&#xff0c;方法无法实施&#xff0c;有些跟不上时代的感觉。 ……

Linux命令替换字符串

:%s/str1/str2/ 用str2替换str1 转载于:https://www.cnblogs.com/haiyang21/p/10020503.html

人格差异

一.感知方式 感知是获取感受的方式 感觉型【S】 S首先通过五官来直接感知事物。注意点在于当前的事实环境&#xff0c;而不是事实的来源。比如&#xff1a;雪融化了 因为太阳出来了&#xff0c;是事实。雪融化了&#xff0c;因为雪吸收太阳的热量&#xff0c;达到自身融点&…

Hibernate @JoinTable 注解

前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家。点击跳转到教程。 JoinTable支持的属性 属性是否必须说明name否指定该连接表的表名JoinColumns否该属性值可接受多个JoinColumn&#xff0c;用于配置连接表…

潭州课堂25班:Ph201805201 django 项目 第三十九课 后台 文章发布,图片上传到 FastDFS后端实现 七牛云讲解(课堂笔记)...

文章发布&#xff1a; # 1&#xff0c;从前台获取参数# 2&#xff0c;校验参数# 3&#xff0c;把数据保存到数据库# 4&#xff0c;返回执行结果到前台&#xff0c;&#xff08;创建成功或失败&#xff09;自定义 froms.py 校验参数 上传图片到七牛云 注册 https://www.qiniu.c…

原来公司需要这样的你

担任项目经理也有几年的时间了&#xff0c;项目组里来了不少的刚毕业或者工作时间不长的年轻人&#xff0c;有精明能干的&#xff0c;有中庸无为的也有自暴自弃混日子的&#xff0c;但再优秀的年轻人也会犯这样那样的错误&#xff0c;我总结起来一般就是以下这些问题&#xff0…

MySQL 实现树形的遍历(关于多级菜单栏以及多级上下部门的查询问题)

前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家。点击跳转到教程。 前言&#xff1a; 关于多级别菜单栏或者权限系统中部门上下级的树形遍历&#xff0c;oracle中有connect by来实现&#xff0c;m…

git使用—rebase还是merge

转载自&#xff1a;https://segmentfault.com/q/1010000007704573/ 我猜现实中的情况是这样的&#xff1a; 使用 git 的人群中&#xff0c;不会用 rebase&#xff08;哪怕是基础功能的&#xff09;的至少一半&#xff08;这个估计恐怕很保守了&#xff09; 剩下一半里真正理解…