2013-03-05 252 views
3

我是Android新手,一切都很順利,直到現在我不得不處理佈局。 我想是這樣的佈局:ImageView:適當縮放按鈕

佈局應該如何: 圖像應適當比例,並保持其比例。

這就是爲什麼我嘗試這個XML代碼,但它不按我想要的方式工作。圖像保持其比率,但在左側和右側超出垂直當屏幕中,並在頂部和底部切割時的水平:

佈局如何,它是: enter image description here

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:layout_centerHorizontal="true" 
    android:orientation="vertical" 
    android:background="@color/background"> 


    <ImageView 
     android:layout_width="wrap_content" 
     android:layout_height="0dp" 
     android:layout_gravity="center" 
     android:src="@drawable/logo" 
     android:gravity="center" 
     android:scaleType="centerCrop" 
     android:contentDescription="@string/app_logo" 
     android:layout_weight="2.5" /> 

    <LinearLayout 
     android:orientation="vertical" 
     android:layout_width="match_parent" 
     android:layout_height="0dp" 
     android:layout_weight="4" 
     android:gravity="center"> 

     <Button 
      android:id="@+id/id1" 
      android:layout_width="match_parent" 
      android:layout_height="wrap_content" 
      android:layout_gravity="center" 
      android:layout_marginBottom="20dp" 
      android:layout_marginLeft="50dp" 
      android:layout_marginRight="50dp" 
      android:text="@string/text1" 
      android:textSize="40sp" 
     /> 

      <Button 
      android:id="@+id/id2" 
      android:layout_width="match_parent" 
      android:layout_height="wrap_content" 
      android:layout_gravity="center" 
      android:layout_marginLeft="50dp" 
      android:layout_marginRight="50dp" 
      android:text="@string/text2" 
      /> 

     <Button 
      android:id="@+id/id3" 
      android:layout_width="match_parent" 
      android:layout_height="wrap_content" 
      android:layout_marginLeft="50dp" 
      android:layout_marginRight="50dp" 
      android:layout_gravity="center" 
      android:text="@string/text3" /> 
    </LinearLayout> 
</LinearLayout> 

我GOOGLE了很多,但只是找不到我在找什麼。 請幫忙!

+1

你能提供的是什麼情況,現在的近似圖片,應該怎麼樣子呢? – g00dy 2013-03-05 08:34:37

+0

請分享您的預期輸出圖片,,以便我們能夠弄清楚 – 2013-03-05 08:41:37

+0

我爲該問題添加了一張圖片。 – JustABit 2013-03-05 08:44:28

回答

1

看起來android:scaleType="fitCenter"是你正在尋找

+0

這工作得非常好!非常感謝你! – JustABit 2013-03-05 09:34:02

0

你要設計2佈局你垂直狀態和水平狀態,並把它們放在兩個不同的文件夾中的Android項目:

,而你把你的常規佈局的佈局文件夾,你應該把景觀佈局layout-land文件夾。

+0

但是這個佈局並不適合他們。 – JustABit 2013-03-05 08:55:22

0

嘗試將android:scaleType="fitXY"設置爲您的ImageView

+0

但它並沒有保持它的比例。 – JustABit 2013-03-05 08:51:29