文章目录

  • 前言
  • 类型解释
  • 名词解释
  • 缩放比例规则
  • 手动试验方法

前言

ImageView scaleType 共八种类型,分别为:center、center_inside、center_crop、matrix、fit_xy、fit_start、fit_center、fit_end , 默认scaleType类型为fit_center

类型解释

  • center: 保持原图的大小,不做任何比例缩放处理,显示在ImageView的中心。当原图大于ImageView时,多出来的部分被截掉,原图小于ImageView 则不做任何处理。

  • matrix: 不改变原图的大小,从ImageView的左上角开始绘制,超出部分做剪切处理。

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

  • center_crop强调图片要完全铺满ImageView,不能留下空白,如果原图大于ImageView, 则按照比例缩放原图,缩放后截取中间部分进行显示 ,如果原图小于ImageView 则按照比例放大原图。

  • fit_startfit_centerfit_end : 三种模式都强调图片要完全展示在ImageView上不能被截取,另外图片的宽或高至少一边等于ImageView 的宽或高,并不强调图片宽和高都要等于ImageView的宽和高。如果原图大于ImageView, 则按照比例值等比例缩放原图,如果原图小于ImageView 则按照比例值等比例放大原图,三种模式区别在于图片展示在ImageView上的位置有所不同,fit_start模式图片展示在ImageView的左上方,fit_center模式图片展示在ImageView的中部,fit_end模式图片展示在ImagView的右下方。

  • center_inside强调图片要完全展示在ImageView上不能被截取,另外图片的宽或高至少一边等于ImageView 的宽或高,并不强调图片宽和高都要等于ImageView的宽和高。如果原图大于ImageView, 则按照比例值等比例缩放原图,如果原图小于ImageView 则不做任何处理,图片居中显示。 (和fit_center的区别:当图片小于ImageView size 该中模式不做任何处理而fit_center则需要等比例放大)

名词解释

原图大于ImageView :图片的宽或者高 任一 大于ImageView的宽或高,就认图片size大于ImageView size .
原图小于ImageView : 图片的宽小于ImageView的的宽并且图片的高小于ImageView的高。

缩放比例规则

假设图片的宽高为 pw,ph;ImageVide的宽高为 iw,ih;

fix_startfit_centerfit_endcenter_inside 这几种模式:当原图大于ImageView时 pw/iw > ph/ih 我们取大值 pw/iw 为缩放比例,只有这样图片才能完全显示在ImageView中,相反如果 pw/iw < ph/ih 则取 ph/ih 为缩放比例。当原图小于ImageView时,pw/iw > ph/ih 我们取 ph/ih 小值为放大比例

center_crop: 当原图大于ImageView, pw/iw > ph/ih ,我们取小值 ph/ih 为缩放比例,只有这样图片才能完全铺满ImageView,当原图小于ImageView时,pw/iw > ph/ih 我们取大值pw/iw 为放大比例。

手动试验方法

新建一个xml文件,里面只需要ImageView控件,然后通过不断的改变ImageView的layout_width,layout_height,scaleType以及src 文件,直接通过AS 预览xml文件即可,无需运行代码

<?xml version="1.0" encoding="utf-8"?>
<LinearLayoutxmlns:android="http://schemas.android.com/apk/res/android"xmlns:tools="http://schemas.android.com/tools"android:layout_width="match_parent"android:layout_height="match_parent"android:orientation="vertical"><ImageViewandroid:id="@+id/imageView"android:layout_width="match_parent"android:layout_height="match_parent"android:scaleType="fitCenter"android:src="@mipmap/ic_launcher"/></LinearLayout>

ImageView scaleType属性相关推荐

  1. android imageview 的常用属性,android imageview scaletype属性

    android imageview scaletype属性并不是很常用,以至于到现在我才注意到,但是在某些应用中,这是一个很重要的属性,比如相册应用. ImageView的Scaletype决定了图片 ...

  2. ImageView.ScaleType 属性值

    ImageView.ScaleType属性值: CENTER Center the p_w_picpath in the view, but perform no scaling. 按图片的原来siz ...

  3. Android ImageView(scaleType属性)(转)

    (转自:http://www.open-open.com/lib/view/open1378257991687.html) 1 2 3 4 5 6 <ImageView android:id=& ...

  4. ImageView.ScaleType属性分析

    ImageView的Scaletype决定了图片在View上显示时的样子,包括是否进行缩放.等比缩放.缩放后展示位置及显示图片的整体还是部分等.Android 提供了八种scaleType的属性值. ...

  5. Android中ImageView的scaleType 属性说明。

    ImageView是Android中最常用的控件之一,在使用ImageView的时候,必不可少的会使用到scaleType属性,该属性指定了你的ImageView如何显示图片.包括是否进行缩放,等比缩 ...

  6. ImageView scaleType 各种不同效果解析

    前言 ImageView是Android最基础的控件之一,通过ImageView我们能够展示各式各样的图片,对其原理的研究有助于我们更好的使用它. 通过本篇文章,你将了解到: 1.ImageView ...

  7. android学习笔记之ImageView的scaleType属性

    我们知道,ImageView有一个属性叫做scaleType,它的取值一共同拥有八种,各自是:matrix,fitXY.fitStart,fitCenter.fitEnd,center,centerC ...

  8. Android ImageView的ScaleType属性

    android中ImageView的ScaleType属性 ScaleType的值分别代表的意义: ImageView是Android中的基础图片显示控件,该控件有个重要的属性是ScaleType,该 ...

  9. android 中ImageView的scaletype属性

    ImageView的属性android:scaleType,即 ImageView.setScaleType(ImageView.ScaleType).android:scaleType是控制图片如何 ...

最新文章

  1. 皮一皮:高考考了 692 分想当程序员的女生
  2. Tiniux 3.0 / Memory.c / OSMemFree
  3. java两个数之间质数求法,求任意两个整数之间质数的个数的代码!!!(新手编写)...
  4. android webviewclient 点击事件,Android Api WebViewClient 详细解析
  5. linux网站渗透工具包,ubuntu下安装 kali linux 渗透工具包
  6. Metropolis Hastings MCMC when the proposal and target have differing support
  7. 永城职业学院计算机专业分类,计算机专业师资队伍
  8. 异型烟分拣 机器人_细支烟、标准烟共线分拣可行性研究
  9. arcgis更改字段名_了解字段属性、别名和表显示选项
  10. webim【LayIM】开发者文档
  11. TeX 主题选讲:TeX 处理器的结构(转)
  12. 主力吸筹猛攻指标源码_主力吸筹指标-(源码)
  13. 混合拉普拉斯分布(LMM)推导及实现
  14. 中职计算机英语教学设计,中职英语教学设计三篇
  15. 本田思域自动挡挡位图解,思域换挡操作技巧
  16. 【渝粤教育】广东开放大学 土木工程测量 形成性考核 (45)
  17. 安卓下快速搜索文件实现历程{NDK}
  18. 计算机网络犯罪和一般犯罪的不同,网络犯罪有哪些类型
  19. asp.net857全科门诊的就诊管理系统#毕业设计
  20. 银河麒麟V10操作系统(桌面版/服务器版)官网免试用申请下载链接

热门文章

  1. mysql之递归树查询
  2. 生成包含IR的CFG-小例子
  3. C语言简单算法之求交错序列前N项和,统计学生平均成绩与及格人数,求1到100的和,求奇数分之一序列前N项和,找出最小值,求n!,统计字符,最佳情侣身高差
  4. python request post from 提交表单
  5. ListView 读取和写入
  6. 中台之上(六):如何为一个商业银行设计业务架构?
  7. 电脑没有回收站找回删除文件的2种方法
  8. 【Python入门】:程序设计3
  9. wpf 模拟鼠标和键盘操作
  10. Java毕设项目校园摄影爱好者交流网站计算机(附源码+系统+数据库+LW)