Android中ImageView控件的ScaleType屬性使用詳解

在咱們平時的開發過程當中,能夠說圖片展現是每一個App必備的,因此咱們會用到ImageView圖片控件,對於每一個Android開發者來講,這已經很是熟悉了,那有童鞋就會問了:這還有什麼好講的呢?事實確實是這樣嗎?android

那我問問你,你肯定對ImageView控件的每一個屬性都瞭如指掌了嗎?,記得以前面試的時候,不少面試官很喜歡問ScaleType屬性的使用,這就考察你是否真的理解了。以前我也並無在乎這個屬性的使用,覺得只會在面試的時候才須要用到,事實是我錯了,在最近的開發過程當中,使用了大量的圖片展現商品的圖片,並且不一樣的模塊,圖片的展現還須要不同,那麼這個時候ScaleType屬性就發揮做用了,但是這個時候忽然發現本身的理解也有點模糊,因此仍是有必要從新理解一下這個屬性的用法的,下面咱們來看看詳解吧。面試

當咱們設置ImageView的ScaleType屬性時,開發工具中會彈出如下的選項讓你選擇: bash

在這裏插入圖片描述
首先咱們設置ImageView控件填充整個屏幕:

<ImageView
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:background="#00c6a6"/>
複製代碼

這個是尚未設置ScaleType屬性的效果圖: ide

在這裏插入圖片描述
再來看看咱們須要加載的圖片的原圖,準備了兩張不一樣尺寸的原圖: 大圖:
在這裏插入圖片描述
小圖:
在這裏插入圖片描述
那咱們來看看每一個選項的效果:

1.android:scaleType=「center」 (1).當原圖的size小於ImageView的size時,保持原圖的大小,顯示在ImageView的中心。 工具

在這裏插入圖片描述
(2).當原圖的size大於ImageView的size時,多出來的部分被截掉。
在這裏插入圖片描述
2.android:scaleType=「center_inside」 以原圖正常顯示爲目的 (1).當原圖的size小於ImageView的size時,不作處理居中顯示圖片.
在這裏插入圖片描述
(2).當原圖的size大於ImageView的size時,就按照比例縮小原圖的寬高,居中顯示在ImageView中.
在這裏插入圖片描述
3.android:scaleType=「center_crop」 以原圖填滿ImageView爲目的 (1).當原圖的size小於ImageView的size時,則按比例拉昇原圖的寬和高,填充ImageView居中顯示。
在這裏插入圖片描述
(2).若是原圖size大於ImageView的size,則與center_inside同樣,按比例縮小,居中顯示在ImageView上。
在這裏插入圖片描述
4.android:scaleType=「matrix」 不改變原圖的大小,從ImageView的左上角開始繪製,超出部分作剪切處理。 (1).當原圖的size小於ImageView的size時
在這裏插入圖片描述
(2).當原圖的size大於ImageView的size時
在這裏插入圖片描述
5.androd:scaleType=「fit_xy」 把圖片按照指定的大小在ImageView中顯示,拉伸顯示圖片,不保持原比例,填滿ImageView. (1).當原圖的size小於ImageView的size時,清晰度看起來比較模糊。
在這裏插入圖片描述
(2).當原圖的size大於ImageView的size時,清晰度看起來比較清晰。
在這裏插入圖片描述
6.android:scaleType=「fit_start」 把原圖按照比例放大縮小到ImageView的高度,顯示在ImageView的start(前部/上部)。 (1).當原圖的size小於ImageView的size時,清晰度看起來比較模糊。
在這裏插入圖片描述
(2).當原圖的size大於ImageView的size時,清晰度看起來比較清晰。
在這裏插入圖片描述

7.android:sacleType=「fit_center」 把原圖按照比例放大縮小到ImageView的高度,顯示在ImageView的center(中部/居中顯示)。 (1).當原圖的size小於ImageView的size時,清晰度看起來比較模糊。 學習

在這裏插入圖片描述
(2).當原圖的size大於ImageView的size時,清晰度看起來比較清晰。
在這裏插入圖片描述
8.android:scaleType=「fit_end」 把原圖按照比例放大縮小到ImageView的高度,顯示在ImageVIew的end(後部/尾部/底部) (1).當原圖的size小於ImageView的size時,清晰度看起來比較模糊。
在這裏插入圖片描述
(2).當原圖的size大於ImageView的size時,清晰度看起來比較清晰。
在這裏插入圖片描述
到這裏就所有解析完了。


如下是我的公衆號(longxuanzhigu),以後發佈的文章會同步到該公衆號,方便交流學習Android知識及分享我的愛好的文章,有問題能夠留言哦: 開發工具

在這裏插入圖片描述
相關文章
相關標籤/搜索