Android中ImageView的图片宽度设置

原创 2015年11月18日 09:54:52
Android中ImageView的图片宽度设置

有一张图片,想放到ImageView中去,高度为原图片大小,宽度希望占据整个屏幕,以下是最初的设置,
<LinearLayout
                  android:id="@+id/calendar_lay_2"
                 android:layout_width="fill_parent"
                 android:layout_height="wrap_content"
                 android:layout_below="@+id/calendar_lay_1"
                 android:background="@color/black"
                 android:orientation="vertical" >                  
                    
                 <ImageView
                     android:id="@+id/calendar_school_img_2"
                     android:layout_width="fill_parent"
                     android:layout_height="wrap_content"
                     android:src="@drawable/school_2" />
             </LinearLayout>
但放手机上去发现图片的宽度并没有占据手机屏幕,最初本人认为是因为外面LinearLayout限制的ImageView的宽度,后来问了大神才发现,原来是ImageView的android:scaleType没有设置。
scaleType=“fitXY”(是将原图进行横方向(即XY方向)的拉伸后绘制的。
<LinearLayout
                  android:id="@+id/calendar_lay_2"
                 android:layout_width="fill_parent"
                 android:layout_height="wrap_content"
                 android:layout_below="@+id/calendar_lay_1"
                 android:background="@color/black"
                 android:orientation="vertical" >                  
                    
                 <ImageView
                     android:id="@+id/calendar_school_img_2"
                     android:scaleType="fitXY"
                     android:layout_height="wrap_content"
                     android:src="@drawable/school_2" />
             </LinearLayout>
scaleType的其他属性含义(摘自http://blog.csdn.net/lirui0822/article/details/38423423)

1 android:scaleType="center"

(1)当图片大于ImageView的宽高:以图片的中心点和ImageView的中心点为基准,按照图片的原大小居中显示,不缩放,用ImageView的大小截取图片的居中部分。

(2)当图片小于ImageView的宽高:直接居中显示该图片。

2 android:scaleType="centerCrop"

(1)当图片大于ImageView的宽高:以图片的中心点和ImageView的中心点为基准,按比例缩小图片,直到图片的宽高有一边等于ImageView的宽高,则对于另一边,图片的长度大于或等于ImageView的长度,最后用ImageView的大小居中截取该图片。

(2)当图片小于ImageView的宽高:以图片的中心店和ImageView的中心点为基准,按比例扩大图片,直到图片的宽高大于或等于ImageView的宽高,并按ImageView的大小居中截取该图片。

3 android:scaleType="centerInside"

(1)当图片大于ImageView的宽高:以图片的中心和ImageView的中心点为基准,按比例缩小图片,使图片宽高等于或者小于ImagevView的宽高,直到将图片的内容完整居中显示。

(2)当图片小于ImageView的宽高:直接居中显示该图片。

4 android:scaleType="fitCenter"

表示把图片按比例扩大(缩小)到ImageView的宽度,居中显示。

5 android:scaleType="fitStart"

表示把图片按比例扩大(缩小)到ImageView的宽度,在ImageView的上方显示。

6 android:scaleType="fitEnd"

表示把图片按比例扩大(缩小)到ImageView的宽度,在ImageView的下方显示。

7 android:scaleType="fitXY"

表示把图片按指定的大小在ImageView中显示,拉伸或收缩图片,不保持原比例,填满ImageView。

版权声明:本文为博主原创文章,未经博主允许不得转载。

Android UI之代码动态设置ImageView的宽度和高度

1.错误方法 用imageview.getWidth() 和 imageview.getHeight() 来获得,其实不然。(X)2.正确方法// 编码中动态设置横条的宽度 ivBo...
  • chenliguan
  • chenliguan
  • 2015年11月16日 08:55
  • 1037

获取屏幕的宽度以及动态设置ImageView的宽度、高度

当在使用一个ImageView的时候,有时候需要将它的宽度、gaodu
  • u012336923
  • u012336923
  • 2014年10月04日 15:57
  • 2428

Android中动态调整ImageView的宽高比

ListView中的Item里的ImageView元素的宽高比,item有固定padding,然后ImageView宽度撑满屏幕,高度由一定比例决定。...
  • Chuck_0430
  • Chuck_0430
  • 2016年08月02日 11:24
  • 3828

Android的控件ImageView几种在代码中设置图片方法

ImageView imageView=(ImageView)findViewById(R.id.imageview); 1、传入参数为 BitmapDrawable drawable中有...
  • m0_37930105
  • m0_37930105
  • 2017年08月02日 11:13
  • 1607

Android 实现按照图片宽高改变imageview的宽高。

/** * 自适应图片的ImageView * * @param context 上下文对象 * @param image imageveiw 对象...
  • u014007519
  • u014007519
  • 2016年07月26日 09:29
  • 3358

让ImageView尺寸适应图片比例和屏幕

是否经常会遇到这种情况:我怕们需要一个ImageView,一般情况下既想让它宽度适应屏幕,又想让它高度适应图片。但是图片比例和屏幕比例没有关联,我们给ImageView设置尺寸,要不就是充满屏幕,要不...
  • xxkalychen
  • xxkalychen
  • 2016年12月24日 18:56
  • 2786

如何动态的获取和设置ImageView的宽度和高度?

package com.pic; import android.app.Activity; import android.os.Bundle; import android.util.Log...
  • yn49782026
  • yn49782026
  • 2012年03月20日 14:35
  • 17003

Android中如何在ViewPager中使动态创建的ImageView铺满屏幕

最近在做东西的时候,有一个要求,就是把用于在ViewPager里面轮播的图片铺满屏幕,但是中间遇到的问题是,ImageView与屏幕之间总是有空隙,情况如下图所示: 当时第一反应时考虑用Layo...
  • gc_gongchao
  • gc_gongchao
  • 2014年09月12日 16:00
  • 3364

android 动态设置ImageView图片

以下设置方法将会用图片填充剩下的屏幕空间,图片会变形: ImageView1.setBackgroundDrawable(getResources().getDrawable(R.drawable....
  • lxq915
  • lxq915
  • 2012年04月11日 18:01
  • 2624

ImageView宽度填满屏幕,高度自适应

在CSS中轻松设置width=100%就可以使得图片宽度充满屏幕,高度自适应,那么在Android里面怎样才能实现这种效果呢? 首先试一下默认的ImageView的效果,布局文件如下activity_...
  • easion_zms
  • easion_zms
  • 2015年12月11日 14:59
  • 4928
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Android中ImageView的图片宽度设置
举报原因:
原因补充:

(最多只允许输入30个字)