保持长宽比 对背景图像进行修改android:scaleType=fitXY
关于android中ImageView的外观,即图片在其内显示出的样子,与布局文件中adjustViewBonds和scaleType
属性的关系。我进行了一些探索。现跟大家共享,欢迎各位指教。分别将adjustViewBonds设为true和false,与各种scaleType搭配,产生了不同效果。(上面的ImagView的adjstViewBonds值为false;下面的ImagView的adjstViewBonds值为true;两个ImagView大小相同)如下:
代码:
![](http://juliaailse.iteye.com/images/icon_star.png)
- <ImageView
- android:id="@+id/imageView1"
- android:layout_width="fill_parent"
- android:layout_height="200dip"
- android:adjustViewBounds="false"
- android:scaleType="centerInside"//此处每次更改
- android:src="@drawable/ic_3" />//此处两幅图间更改,一副图的大小较小,另一幅的较大。
- <ImageView
- android:id="@+id/imageView2"
- android:layout_width="fill_parent"
- android:layout_height="200dip"
- android:adjustViewBounds="true"
- android:scaleType="centerInside"//此处每次更改
- android:src="@drawable/ic_3" />//此处两幅图间更改,一副图的大小较小,另一幅的较大。
原图:
1、scaleType=“matrix”
如图pic1、pic2.
是保持原图大小、从左上角的点开始,以矩阵形式绘图。
pic1
pic2
2、scaleType=“fitXY”
如图pic3、pic4.
是将原图进行横方向(即XY方向)的拉伸后绘制的。
pic3
pic4
3、scaleType=“fitStart”
如图pic5、pic6。
是将原图沿左上角的点(即matrix方式绘图开始的点),按比例缩放原图绘制而成的。
pic5
pic6
4、scaleType=“fitCenter”
如图pic7、pic8。
是将原图沿上方居中的点(即matrix方式绘图第一行的居中的点),按比例缩放原图绘制而成的。
pic7
pic8
5、scaleType=“fitEnd”
如图pic9、pic10。、
是将原图沿下方居中的点(即matrix方式绘图最后一行的居中的点),按比例缩放原图绘制而成的。
pic9
pic10
6、scaleType=“Center”
如图pic11、pic12。
是保持原图大小,以原图的几何中心点和ImagView的几何中心点为基准,只绘制ImagView大小的图像。
pic11
pic12
7、scaleType=“centerCrop”
如图pic13、pic14。
不保持原图大小,以原图的几何中心点和ImagView的几何中心点为基准,只绘制ImagView大小的图像(以填满
ImagView为目标,对原图进行裁剪)。
pic13
pic14
8、scaleType=“centerInside”
如图pic15、pic16.
不保持原图大小,以原图的几何中心点和ImagView的几何中心点为基准,只绘制ImagView大小的图像(以显示
完整图片为目标,对原图进行缩放)。
pic15
pic16
(事实证明,adjustViewBonds单独设置无影响。)
依本人之见,scaletype的种类分为三类matrix(默认)、fit-X类、和center类。matrix就不多说。fit-X类中,
fitStart、fitCenter和fitEnd之间的都是根据需要使原图改变对ImgView进行适应,按matrix进行绘制,但它们
的区别在于基准不同。fitStart的基准为最上角的点(即matrix方式开始的点)fitCenter的基准点为中间的点
(matrix方式中可以使图片居中的点),而fitEnd的基准点为右下角的点(即matrix方式最后绘制点)。center类
中,center、centerCrop、centerInside都是以原图的几何中心点和ImagView的几何中心点为基准,且只绘制
ImagView大小的图像,不同的是是否保持原图大小和绘图的目标不同、采取的手段不同。
转载于:https://www.cnblogs.com/tc310/p/3952460.html
保持长宽比 对背景图像进行修改android:scaleType=fitXY相关推荐
- (转载)android:visibility和android:scaleType 属性
1.android:visibility="gone" 其有三个属性:visible显示:invisible显示黑背景条:gone不显示 2.android:scaleType属性 ...
- android:scaletype没作用,ImageView的属性android:scaleType的作用分析
在网上查了好多资料,大致都雷同,大家都是互相抄袭的,看着很费劲,不好理解,自己总结一下,留着需要看的话来查找. 代码中的例子如下: android:id="@+id/iv_bit_1&quo ...
- android:scaleType=matrix布局文件加载图片时候的显示方式
android:scaleType="center" 以原图的几何中心点和ImagView的几何中心点为基准,按图片的原来size居中显示,不缩放,当图片长/宽超过View的长/宽 ...
- android:scaleType 属性介绍
android:scaleType="center" (不完整显示,按View剪裁) 以原图的几何中心点和ImagView的几何中心点为基准, 按图片的原来size居中显示,不缩 ...
- Android scaleType属性
转自:https://blog.csdn.net/lirui0822/article/details/38423423 1.android:scaleType="center" ( ...
- android scaletype没作用,Android ImageView的ScaleType属性
参考 ScaleType属性 常量 含义 fitXY 横向.纵向独立缩放,以适应该ImageView fitCenter 保持纵横比缩放图片,缩放完成后将图片放在ImageView的中央 fitSta ...
- android scaletype没作用,Android源码系列之深入理解ImageView的ScaleType属性
做Android开发的童靴们肯定对系统自带的控件使用的都非常熟悉,比如Button.TextView.ImageView等.如果你问我具体使用,我会给说:拿ImageView来说吧,首先创建一个新的项 ...
- 修改Android开机画面
Android系统开机动画包括两部分: 开机显示的 ANDROID 文字: ANDROID发光动画. 这篇文章说的开机动画是第一种,下面开始正文!1. 制作当前屏幕像素的图片(模拟器默认为320*48 ...
- android:scaleType属性说明
目录 一. ScaleType属性的八种缩放规则说明 二. ScaleType属性的八种缩放效果图演示 三. ImageView.ScaleType自定义缩放规则,等比缩放,完整显示,拒绝变形 四. ...
- Android系统移植与调试之-------如何修改Android设备添加重启、飞行模式、静音模式等功能(一)...
1.首先先来看一下修改前后的效果对比图 修改之后的图片 确认重启界面 具体的修改内容在下一篇中具体介绍. Android系统移植与调试之------->如何修改Android设备添加重启.飞行模 ...
最新文章
- selenium中javascript调试
- 2.Maven特点,Maven约定,建立第一个Maven项目
- python 打开某个exe_python定时检查启动某个exe程序(如果exe挂了)
- Asp.net mvc中使用配置Unity
- java process exe.exec 执行exe程序
- wpf 切换搜狗输入法英文_CPA《财管》考试,没时间按计算器,用搜狗V模式,真香!...
- Poi实现Excel的导入
- 来字节一月了,四个字:翻天覆地
- 【计算机网络自顶向下方法】深入理解计算机网络分层和封装模型
- 朋友圈加粗字体数字_如何让你的朋友圈骚到脱颖而出?
- 《App后台开发运维和架构实践》勘误
- 文件批量提取工具,从大量文件中批量提取指定文件的实现思路,文件批量复制
- 工作日志之Sonar扫描错误处理-Sonar扫描结果入库 java.sql.BatchUpdateException: Incorrect string value: '\xF3\xA3\xAC\xB
- 易优CMS:uichannel的基础用法
- sap 物料MIGO入库时[有关业务/事件类型WA在年2017的号码范围不存在]的解决方法
- 六大文库原格式下载,这可能是唯一免费且好用的工具了
- web服务端和游戏服务端的区别
- 开学季,孩子们怎么学习?
- Thymeleaf模板使用实例+模板分页
- 在RStudio中更新R版本
热门文章
- ZFNet: Visualizing and Understanding Convolutional Networks
- spring boot 2.0 与FASTDFS进行整合
- CentOS7安装PostgreSQL10,pgadmin4
- bzoj4974 字符串大师
- DAG镶嵌模型+原始路径打印
- 利用Xcode建立PhoneGap应用程序环境
- 今天主要改了罗宾钢琴的首页图片缩放问题
- 20190820 On Java8 第十章 接口
- Chap6:风险与监督[《区块链中文词典》维京甲子]
- 51单片机的初了解(4)