ImageView的屬性android:scaleType作用

來源:互聯網
上載者:User

    在網上查了好多資料,大致都雷同,大家都是互相抄襲的,看著很費勁,不好理解,自己總結一下,留著需要看的話來尋找。

代碼中的例子如下:

<ImageView            android:id="@+id/iv_bit_1"            android:layout_width="@dimen/passcode_width"            android:layout_height="@dimen/passcode_height"            android:scaleType="fitXY" />        <ImageView            android:id="@+id/iv_bit_2"            android:layout_width="@dimen/passcode_width"            android:layout_height="@dimen/passcode_height"            android:scaleType="fitXY" />        <ImageView            android:id="@+id/iv_bit_3"            android:layout_width="@dimen/passcode_width"            android:layout_height="@dimen/passcode_height"            android:scaleType="fitXY" />        <ImageView            android:id="@+id/iv_bit_4"            android:layout_width="@dimen/passcode_width"            android:layout_height="@dimen/passcode_height"            android:scaleType="fitXY" />        <ImageView            android:id="@+id/iv_bit_5"            android:layout_width="@dimen/passcode_width"            android:layout_height="@dimen/passcode_height"            android:scaleType="fitXY" />        <ImageView            android:id="@+id/iv_bit_6"            android:layout_width="@dimen/passcode_width"            android:layout_height="@dimen/passcode_height"            android:scaleType="fitXY" />

      通過API的查詢得知,

  ImageView.ScaleType的結構為:

繼承關係

public static final enum ImageView.ScaleType extends Enum<E extends Enum<E>>

java.lang.Object

java.lang.Enum<E extends java.lang.Enum<E>>

android.widget.ImageView.ScaleType

 類概述

將圖片邊界縮放,以適應視圖邊界時的可選項。

常量

public static final ImageView.ScaleType CENTER

在視圖中使映像置中,不執行縮放。 在 XML 中可以使用的文法: android:scaleType="center"。

public static final ImageView.ScaleType CENTER_CROP

均衡的縮放映像(保持映像原始比例),使圖片的兩個座標(寬、高)都大於等於 相應的視圖座標(負的內邊距)。映像則位於視圖的中央。 在 XML 中可以使用的文法:android:scaleType="centerCrop"。

public static final ImageView.ScaleType CENTER_INSIDE

衡的縮放映像(保持映像原始比例),使圖片的兩個座標(寬、高)都小於等於 相應的視圖座標(負的內邊距)。映像則位於視圖的中央。 在 XML 中可以使用的文法:android:scaleType="centerInside"。

public static final ImageView.ScaleType FIT_CENTER

使用 CENTER 方式縮放映像。 在 XML 中可以使用的文法: android:scaleType="fitCenter"。

public static final ImageView.ScaleType FIT_END

使用 END 方式縮放映像。 在 XML 中可以使用的文法: android:scaleType="fitEnd"。

public static final ImageView.ScaleType FIT_START

使用 START 方式縮放映像。 在 XML 中可以使用的文法:android:scaleType="fitStart"。

public static final ImageView.ScaleType FIT_XY

使用 FILL 方式縮放映像。 在 XML 中可以使用的文法: android:scaleType="fitXY"。

public static final ImageView.ScaleType MATRIX

繪製時,使用映像矩陣方式縮放。映像矩陣可以通過 setImageMatrix(Matrix) 設定。在 XML 中可以使用的文法: android:scaleType="matrix"。

此間通過閱讀網友的一篇日誌,對此也有更詳細的解釋,大家可以參考:

http://blog.sina.com.cn/s/blog_407abb0d0100mao1.html

用代碼展示著幾個屬性的效果,效果:

主介面:

CENTER效果:

CENTER_CROP效果:

CENTER_INSIDE效果:

FIT_CENTER效果:

FIT_START效果:

FIT_END效果:

FIT_XY效果:

MATRIX效果:

結果分析:

我選取的原始圖片明顯標誌如下:左上方有蝴蝶、花朵,右下角為一個蝗蟲,且圖片像素大於 320×480,各種類型的差異通過查看圖片的明顯標誌即可窺見一斑。比如FIT_START,填充於螢幕上方,並等比例縮放;相反,FIT_END置於螢幕下方,而FIT_CENTER則在中間。CENTER_CROP裁剪了圖片的中間部分填充螢幕。其它類型可自行查看分析。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.