天天看點

ImageView.ScaleType設定圖解

圖文相配很清晰的看出每個屬性的效果,

感覺 center_crop 比較有用,長寬自動适應 imageview ,整個圖檔自動縮略填充整個區域且居中顯示(高寬不一定是view的尺寸),以前用js在網頁上實作的,在

android上一開始還在想要用java來自己實作這個效果太麻煩了,沒想到系統自帶友善多了

imageview的scaletype決定了圖檔在view上顯示時的樣子,如進行何種比例的縮放,及顯示圖檔的整體還是部分,等等。

設定的方式包括:

1. 在layout xml中定義android:scaletype="center"

2. 或在代碼中調用imageview.setscaletype(imageview.scaletype.center);

接下來,将對scaletype的值和對應的顯示效果用最直覺的方式——真圖示範的方法,來進行說明。

首先,是測試使用的原始圖檔:

ImageView.ScaleType設定圖解

(dimensions: 128 * 128)

ImageView.ScaleType設定圖解

 (dimensions: 640 * 428)

好,開始下面的測試:

1. setscaletype(imageview.scaletype.center);

    按圖檔的原來size居中顯示,當圖檔長/寬超過view的長/寬,則截取圖檔的居中部分顯示

ImageView.ScaleType設定圖解
ImageView.ScaleType設定圖解

2. setscaletype(imageview.scaletype.center_crop);

    按比例擴大圖檔的size居中顯示,使得圖檔長(寬)等于或大于view的長(寬) 

ImageView.ScaleType設定圖解
ImageView.ScaleType設定圖解

3. setscaletype(imageview.scaletype.center_inside);

    将圖檔的内容完整居中顯示,通過按比例縮小或原來的size使得圖檔長/寬等于或小于view的長/寬 

ImageView.ScaleType設定圖解
ImageView.ScaleType設定圖解

4. setscaletype(imageview.scaletype.fit_center);

    把圖檔按比例擴大/縮小到view的寬度,居中顯示

ImageView.ScaleType設定圖解
ImageView.ScaleType設定圖解

5. fit_start, fit_end在圖檔縮放效果上與fit_center一樣,隻是顯示的位置不同,fit_start是置于頂部,fit_center居中,fit_end置于底部。

    在此就不給出示例了。

6. fit_xy

    不按比例縮放圖檔,目标是把圖檔塞滿整個view。

ImageView.ScaleType設定圖解
ImageView.ScaleType設定圖解

轉至:http://blog.csdn.net/larryl2003/article/details/6919513

因為擔心以後找不到了是以轉到自己的部落格儲存下。