2011-07-11 201 views
7

我有一個圖像在android中的imageview內。圖像縮放調整大小IMAGEVIEW android

我使用通過代碼scaletype(MATRIX)與此類似縮放圖像:

     mtrx.postScale(scale, scale); 
       imageView.setImageMatrix(mtrx); 
      imageView.setScaleType(ScaleType.MATRIX); 
      imageView.invalidate(); 

現在,這並不正確調整包含在ImageView的,這是很好的形象,但我需要的是將圖像重新定位到圖像視圖中的位置0,0,然後調整圖像視圖本身的大小以縮放圖像的大小。

到目前爲止,我想出了每個想法,試圖重複使用相同的imageView似乎不工作,或者我只是做錯了什麼。

是我的唯一方法來完成此操作來銷燬imageview,調整位圖大小,創建一個新的imageview,其中包含按比例創建的新位圖並將視圖添加回佈局?

我真的很喜歡不這樣做..我正在碰撞16兆堆堆的限制,因爲它是與事物。如何告訴矩陣將圖像移動到imageView中的位置0,0(imageView最初是在縮放圖像縮小後最初創建的,然後我如何告訴imageView,嘿,你現在只是?大如縮放後的圖像提前

感謝

回答

8

設置你的形象以「調整視圖邊界」出現這樣的伎倆

下面介紹一下文檔不得不說:

如果您希望ImageView將邊界調整爲保持其可繪製的縱橫比。

您可以通過使用android:adjustViewBounds="true"或代碼imageView.setAdjustViewBounds(true)來做到這一點。

+1

但它不適用scaleType fitStart。至少在這種情況下:縮小後底部有空的垂直空間。當我設置adjustViewBounds =「true」時,這個空間不會被調整 – Ixx

1

將「調整視圖邊界」設置爲true,然後將比例類型設置爲「fitXY」,最後調整layout_width和height。你會看到圖像大小調整。

相關問題