2013-04-12 314 views
3

一個imageview的假設你有這個按比例大小的Android

<ImageView 
     android:id="@+id/mainImageView" 
     android:layout_width="match_parent" 
     android:background="@drawable/mylogo_250px60px" 
/> 

我想定義的高度,因此相應地擴展到寬度。所以如果Android決定縮放標誌以顯示寬度,高度也應該增加。

也可以定義一些東西,所以當手機從垂直向水平傾斜時,徽標會正確縮放嗎?

(基本上,該標誌是在主活性的列表視圖上文)

我自己也嘗試使用這一點,但沒有運氣(高度出現太多相比寬度小。圖像不調整大小/在縮放高度)

<ImageView 
     android:id="@+id/mainImageView" 
     android:layout_width="match_parent" 
     android:background="@drawable/mylogo_250px60px" 
     android:layout_height="wrap_content" 
     android:scaleType="centerInside" 
     android:adjustViewBounds="true"          
    /> 

如果我設計它在Eclipse/ADT GUI工具徽標變得76dp,並期待在我的兩個測試手機好。但是,我認爲應該可以簡單地按比例調整圖像大小?

「固定的高度」具有正確拉託對寬度(垂直視圖,而不是當電話被傾斜) enter image description here

「自動高度」出現錯誤比率明智相比寬度: enter image description here

+1

請問您能向我們展示輸出圖像給我們嗎? –

+0

好的。我會上傳76dp高度版本+建議的更改,似乎不工作 – Tom

+0

我已經上傳了兩個截圖。我想我可以使用固定的,但我寧願使用一個配置,其中的圖像會自動調整大小和正確縮放,無論什麼 – Tom

回答

9

更改您的圖像查看代碼,如下所示

<ImageView 
     android:id="@+id/mainImageView" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:src="@drawable/mylogo_250px60px" 
     android:scaleType="fitEnd" 
     android:adjustViewBounds="true" 
    /> 
+1

不幸的是,高度繼續很小(不調整/縮放),寬度拉伸以匹配父寬度。 – Tom

+0

如果可以爲您的圖像繪製9修補程序,您可以嘗試使用 –

1

Try t他:

<ImageView 
     android:id="@+id/mainImageView" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:src="@drawable/mylogo_250px60px" 
     android:scaleType="fitEnd" 
     android:adjustViewBounds="true" 
     /> 

希望其幫助

+0

9修補程序圖像需要android:adjustViewBounds。謝謝。 – francas

-1

這工作得很好:

<ImageView 
    android:id="@+id/mainImageView" 
    android:layout_width="wrap_content" 
    android:background="@drawable/mylogo_250px60px" 
    android:layout_height="wrap_content"          
/> 

唯一的問題:被拉伸必須至少一樣寬,它的父。

渲染不會讓ImageView的比其父更廣泛:

  • 因此,將完全適合在寬
  • 它將保持正比
(因爲WRAP_CONTENT的)

我通常計算分辨率爲1080x1092(全高清)的手機。