2010-12-17 58 views
0

我想上的圖像視圖實例應用圖像...但它不覆蓋它正確...... 請指教圖片犯規封面圖片視圖完全

這裏是我的圖像視圖代碼:

android:id="@+id/imageViewVessel" 
    android:layout_width="fill_parent" 
    android:scaleType="fitStart" 
    android:layout_height="170dip" 
    android:src="@drawable/vessel" 

編輯由kcoppock:從devaditya的評論如下

TableRow rowImage = new TableRow(this); 
rowImage.setBackgroundColor(Color.GRAY); 
rowImage.setMinimumHeight(150); 
rowImage.setGravity(Gravity.CENTER); 
rowImage.setMinimumWidth(LayoutParams.FILL_PARENT); 
ImageView imgViewVessel=new ImageView(this); 
imgViewVessel.setImageResource(R.drawable.vessel); 
imgViewVessel.setMinimumHeight(150); 
imgViewVessel.setMinimumWidth(LayoutParams.FILL_PARENT); 
imgViewVessel.setScaleType(ScaleType.FIT_XY); 
rowImage.addView(imgViewVessel); 
+0

沒有代碼:) – Jonas 2010-12-17 07:00:30

+0

你能發佈你的xml文件嗎? – Sandy 2010-12-17 07:18:11

回答

1

添加代碼,您可以設置在佈局文件中規模類型:Android:SCA leType =「fitXY」或用fitXY調用setScaleType。

6

要擴大Gao的答案,您需要爲ImageView設置scaleType,但fitXY不太可能是您正在查找的scaleType。您可以在上面的鏈接的完整列表,但也有一些最常見的是:

  • centerCrop:這將保持圖像的長寬比,完全填補了框架,但裁剪掉要麼左以及如果幀和源圖像的高寬比不同,則右側或頂部和底部。

  • centerInside:這也保持縱橫比,但圖像縮放到完全適合視圖內,以便最長的邊與幀大小相同。如果幀和源圖像的高寬比不同,這可以給你一個信箱類型的效果。 fitStartfitEnd是相同的縮放方法,但它們具有不同的圖像位置(分別爲左上角和右下角)。

  • fitXY:只有在不成比例的縮放不會影響圖形的情況下才能使用此項。在位圖圖形的情況下,這幾乎總是使用不好。這會將源圖像的寬度設置爲視圖的寬度,並將源圖像的高度設置爲視圖的高度,而不會保持源圖像的高寬比。

+1

請注意,'centerInside'只能縮小,永遠不會上升。 – ohhorob 2010-12-21 00:37:32

+0

Coppock良好的建議...我嘗試了所有這些,但我無法根據基地調整寬度...有沒有人做過類似的事情? – devaditya 2010-12-21 05:04:01

+0

@ohhorob:真的嗎?很高興知道,我其實並不知道。 @devaditya:你究竟想要做什麼,這些都無法完成?我真的不明白。 – kcoppock 2010-12-21 06:51:29