Android ImageView的scaleType属性与adjustViewBounds属性

分享到:

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.


以下附上效果图:

原图为Pocoyo的头像,上图为原图的size大于ImageView的size,下图为原图的size小于ImageView的size





Tip:非常多人都认为fitCenter和centerInside没有差别,依据上面的效果图来分析,事实上是有差别的。fitCenter是将原图等比例放大或缩小,使原图的高度等于ImageView的高度,并居中显示,而centerInside在原图的原本size大于ImageView的size时,则缩小原图,效果同fitCenter;在原图的原本size小于ImageView的size时,则不进行不论什么size处理,居中显示,效果同center。


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

昵    称:
验证码:

相关文档:

  • CirclelmageView:一个圆形的Android ImageView
    CirclelmageView是一个可以快速创建圆形截图的ImageView。适用于各种可绘制类型,比如Picasso的PicassoDrawable以及其他非标准可绘制类型。...
  • android的计算器
    今天我闲着无聊,便想仿照Iphone的计算器自己写一个出来玩玩,于是就开动脑经,来场头脑风暴了!我拿什么了写呢?wp?这是个不错的选...
  • android 中自定义菜单
    在android开发的过程中系统自带的菜单往往满足不了开发中的一些需求,比如说一排最多只能放置三个菜单,坐多只能放置6个,再多的话...
  • ZT android -- 蓝牙 bluetooth (二) 打开蓝牙
    android--蓝牙bluetooth(二)打开蓝牙 分类:Android的原生应用分析2013-05-2323:574773人阅读评论(20)收藏举报...
  • Android入门-工欲善其事必先利其器 -------- 转载
    0.前言: 多了解点东西,总会用得上。本文源于项目中的一个bug,Handler中的Runnable都被卡住不执行,半天没找到卡在什么地方,其实通过...
  • Android进阶篇-ListView和Button共存
    很多情况下,会有这么一种情况。就是ListView的子项中可能有Button或者ImageButton,如何使得ListView和Button/ImageButton共存呢? 一般情况下,...
  • Android4.0新增API
    Android4.0平台特性API等级:14Android4.0是一次重要的平台发布版,为用户和应用程序开发者增加了大量的新特性。在下面我们将讨论的所有...
  • Google为Android开发者提供定制的Eclipse IDE
    作者:PandaFang 出处:http://www.cnblogs.com/lonkiss/archive/2012/11/17/2775440.html 原创文章,转载请注明作者和出处,未经允许不可用于商业营利活动...
  • android GridView 的使用 实现多项选择
    今天小研究了一下GridView,目的是为了实现下面的效果(GridView多项选择): 首先,在布局文件添加GridView,创建适配器的items... 具体的都在注释...
  • 使用JNI开发Android应用
    JNI是Java NativeInterface的缩写,中文为JAVA本地调用。从Java1.1开始,Java Native Interface(JNI)标准成为java平台的一部分,它允许Java代码和其他语...
  • Android游戏开发之使用AnimationDrable实现Frame动画(三十一)
    Android游戏开发之使用AnimationDrable实现Frame动画雨松MOMO原创文章如转载,请注明:转载至我的独立域名博客雨松MOMO程序研究院,原文地址:...
  • Android得到控件在屏幕中的坐标
    getLocationOnScreen,计算该视图在全局坐标系中的x,y值,(注意这个值是要从屏幕顶端算起,也就是索包括了通知栏的高度)//获取在当前...
  • Android异步加载图像小结(转)_异步加载
    ,经测试,如果要加载多个图片,这并不能实现异步加载,而是等到...d模式实现多线程异步加载 private void load...这样就简单实现了异步...
  • Android Activity和Fragment的转场动画
    Activity转场动画 Activity的转场动画是通过overridePendingTransition(intenterAnim,intexitAnim)实现的。 这个方法是APILevel5加入的。 这个方法在startActivi...
  • Android studio教程:[6]创建多个Activity
    通常来说,一个android应用程序不止一个Activity(活动),更不止一个界面。于是需要创建多个Activity来满足应用程序的要求,这里我将告诉...
  • Android ListView 下拉列表详解
    ListView是Android中最常用的视图列表,要将获得的数据显示在ListView中,需要借助于数据适配器来完成。其中最常用的适配器为ArrayAdapter和S...
  • 解决Android studio初次运行失败的问题
    由于GFW对androiddeveloper的屏蔽,初次运行Androidstudio,可能无法下载相关的组件,错误如下: AndroidStudiodoesn'tstart,failssayingcomponentsnotinstalled...
  • android下载图片在手机中展示
    在项目开发中从互联网上下载图片是经常用到的功能,再次总结一下 1.普通的下载方式 布局文件: <?xmlversion="1.0"encoding="utf-8"?> <L...
  • Android开发七:常用控件3--ListView(二)
    接着上一节,上一节讲的是通过ArrayAdapter、SimpleAdapter给ListView绑定数据,它们的缺点就是在每一个item里面如果有按钮控件的话,点击是...
  • Android判断当前网络是否可用--示例代码
    Android判断当前网络是否可用--示例代码...