scaleType详解

scaleType详解scaleType详解

大家好,又见面了,我是你们的朋友全栈君。

上图 其中蘑菇代表你的图片  红色背景代表你的布局

恕我直言 用的最多的还是
fit_xy 和center_crop
scaleType详解scaleType详解


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.

 

Tip:很多人都觉得fitCenter和centerInside没有区别,根据上面的效果图来分析,其实是有区别的。fitCenter是将原图等比例放大或缩小,使原图的高度等于ImageView的高度,并居中显示,

而centerInside在原图的原本size大于ImageView的size时,则缩小原图,效果同fitCenter;在原图的原本size小于ImageView的size时,则不进行任何size处理,居中显示,效果同center。


基本用不到的一个属性:

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


版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/149026.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Web Server与App Server

    Web Server与App ServerWebServer 常见的 WebServer 有 ApacheServer 与 Nginx ApacheHttpSe 是 Apache 软件基金会下的一个项目 是一款开源的 HTTP 服务器软件 它也可以作为邮件代理服务器 通用的 TCP 代理服务器 Nginx 之前有配置它的博文 大多数用它来做负载均衡 这两者基本相同 HTTP 服务器本质上也是一种应用程序 通常运行在

    2025年12月13日
    6
  • idea启动tomcat控制台乱码_idea tomcat 乱码

    idea启动tomcat控制台乱码_idea tomcat 乱码最近在部署web项目启动tomcat时日志乱码了,很难受,试着很多方法也没有解决,最后的解决方法让我大跌眼镜,故记录一下,建议看到最后:1.修改本地tomcat下conf目录下logging.properties文件内容新增java.util.logging.ConsoleHandler.encoding=GBK2.修改tomcat下bin-catalina.bat文件3.在tomcat的conf-server.xml中修改4.在idea中修改配置ps:如果还是不行,就跟我今天遇到的

    2022年9月25日
    3
  • qt的内存映射

    qt的内存映射uchar*QFileDevice::map(qint64offset,qint64size,QFileDevice::MemoryMapFlagsflags=NoOptions)从偏移量开始将文件的大小字节映射到内存中。应该打开一个文件以使映射成功,但在映射内存之后,该文件不需要保持打开状态。当QFile被销毁或用这个对象打开一个新文件时,任何未被映射的映射都将被自动取消映射。映射将具有与文件相同的打开模式(读和/或写),除非使用maprivateOption,在这种情况下,始终可以

    2022年6月15日
    109
  • 调幅收音机原理图及分析_调频调幅收音机区别

    调幅收音机原理图及分析_调频调幅收音机区别标题:致小白:详解调幅收音机的原理妈妈再也不用担心我不懂收音机啦!作者:Pleiades_Antares出品:BDF元培调查组北京市内包小组版权声明:本作系完全原创,他人不得在原作者不知

    2022年8月2日
    10
  • 线程池 ManualResetEvent[通俗易懂]

    线程池 ManualResetEvent[通俗易懂]线程池:    “线程池”是可以用来在后台执行多个任务的线程集合。(有关背景信息,请参见使用线程处理。)这使主线程可以自由地异步执行其他任务。线程池通常用于服务器应用程序。每个传入请求都将分配给线程池中的一个线程,因此可以异步处理请求,而不会占用主线程,也不会延迟后续请求的处理。一旦池中的某个线程完成任务,它将返回到等待线程队列中,等待被再次使用。这种重用使应用程序可以避免为每个任…

    2022年7月18日
    15
  • 比特币四之实现

    比特币四之实现正在学习区块链,如果我哪里有错误希望大家指出,如果有任何想法也欢迎留言。这些笔记本身是在typora上写的,如果有显示不正确的敬请谅解。笔记本身也是给我自己写的,所以如果有侵权的请通知我,我立即删除。文章目录4.1矿工的打包结果4.2节点的内容4.3挖矿效率的概率分析4.4比特币的总量4.5分叉攻击4.6有效数据不上链4.7双花攻击4.1矿工的打包结果这个主要是UTXO相关的,下面…

    2022年6月25日
    27

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号