標籤:android style blog http ar color os 使用 sp
一、基本定義
ImageView繼承自View組件,它的主要功能是用於顯示任何Drawable對象,派生出了ImageButton、ZoomButton等組件。
二、屬性和方法
1、ImageView的xml屬性和方法
| xml屬性 |
相關方法 |
說明 |
| android:adjustViewBounds |
setAdjustViewBounds(boolean) |
設定該屬性為真可以在 ImageView 調整邊界時保持圖片的縱橫比例。(需要與maxWidth、MaxHeight一起使用,否則單獨使用沒有效果。) |
| android:baseline |
setBaseline(int) |
視圖內基準的位移量 |
| android:baselineAlignBottom |
setBaselineAlignBottom(boolean) |
如果為true,映像視圖將基準與父控制項底部邊緣對齊。 |
| android:cropToPadding |
setCropToPadding(boolean) |
如果為真,會剪下圖片以適應內邊距的大小。(是否截取指定地區用空白代替。單獨設定無效果,需要與scrollY一起使用) |
| android:maxHeight |
setMaxHeight(int) |
為視圖提供最大高度的選擇性參數。(譯者註:單獨使用無效,需要與setAdjustViewBounds一起使用。如果想設定圖片固定大小,又想保持圖片寬高比,需要如下設定: 1) 設定setAdjustViewBounds為true; 2) 設定maxWidth、MaxHeight; 3) 設定設定layout_width和layout_height為wrap_content。) |
| android:maxWidth |
setMaxWidth(int) |
為視圖提供最大寬度的選擇性參數。 |
| android:scaleType |
setScaleType(ImageView.ScaleType) |
控製為了使圖片適合 ImageView 的大小,應該如何變更圖片大小或移動圖片。 |
| android:src |
setImageResource(int) |
設定可繪製對象作為 ImageView 顯示的內容 |
| android:tint |
setColorFilter(int,PorterDuff.Mode) |
為圖片設定著色顏色(將圖片渲染成指定的顏色) |
2、ScaleType(展開類型)的幾個XML屬性介紹(在代碼中的設定是setScaleType(ScaleType.XXXX)。
ScaleType主要用於處理圖片大小與ImageView大小不匹配時圖片的處理。比如ImageView的的尺寸比圖片的大,該如何展開圖片。以下通過執行個體說明,建立兩個ImageView尺寸均為100dp×100dp,背景分別是紅色和藍色,大圖片尺寸為157像素×220像素,小圖片預設使用 ic_launcher(48像素×48像素)。
2.1 fitCenter:如果圖片比ImageView的尺寸大, 則將圖片等比例縮小,直到圖片的寬或高與ImageView的寬或高一致,並且置中顯示;對小圖片則是同理放大。
2.2 fitStart:如果圖片比ImageView的尺寸大, 則將圖片等比例縮小,直到圖片的寬或高與ImageView的寬或高一致,並且顯示在左上方;對小圖片則是同理放大。
2.3 fitEnd:如果圖片比ImageView的尺寸大, 則將圖片等比例縮小,直到圖片的寬或高與ImageView的寬或高一致,並且顯示在右下角;對小圖片則是同理放大。
2.4 center:不進行任何的縮放,把圖片放在ImageView的中間。如果圖片大於ImageView的尺寸,則截取圖片的中間部分置於ImageView中;如果圖片小,則將其置中顯示。
2.5 centerInside:保持縱橫比縮放圖片,使得ImageView能夠完全顯示該圖片。與fitCenter不同的是,該值是如果圖片比ImageView大,則進行等比例縮小,但是如果比ImageView小就不進行放大而是直接放在ImageView中間。
2.6 centerCrop:保持縱橫比縮放圖片,圖片的最短邊與ImageView的最短邊一致,長邊多出來的部分剪下掉,也就是保證圖片能夠完全填充ImageView。
2.7 fitXY:將圖片的寬和高進行獨立縮放,使其填充整改ImageView。
三、實現效果
Android學習筆記_S01_E04 ImageView及其子類(一)