2014-10-03 52 views
1

我正在Android中執行TicTacToe。當我點擊ImageButton時,顯示應用程序的圖像會放大組件,而不考慮按鈕的大小。適合ImageButton的圖像

TicTacToe

我使用的屬性android:scaleType="fitCenter"(幾乎fitXYcenterInsidefitCenterfitStart)要儘量合身組件內的圖像,但沒有奏效。

這是我的我的ImageButton的XML代碼的一部分:

<LinearLayout 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:gravity="center" > 

     <ImageButton 
      android:id="@+id/btn1" 
      android:layout_width="wrap_content" 
      android:layout_height="100dp" 
      android:layout_weight="0.246" 
      android:onClick="onDonGato" 
      android:text="" /> 

     <ImageButton 
      android:id="@+id/btn2" 
      android:layout_width="wrap_content" 
      android:layout_height="match_parent" 
      android:layout_weight="0.246" 
      android:onClick="onDonGato" 
      android:scaleType="fitCenter" 
      android:text="" /> 

     <ImageButton 
      android:id="@+id/btn3" 
      android:layout_width="wrap_content" 
      android:layout_height="match_parent" 
      android:layout_weight="0.246" 
      android:onClick="onDonGato" 
      android:scaleType="fitCenter" 
      android:text="" /> 

</LinearLayout> 

我不認爲我在那裏運行的應用程序的Android設備(因爲我跑在Android虛擬設備的遊戲,它發生一樣的問題)。

我會感謝任何幫助解決我的問題。謝謝。

回答

1

如果線性佈局的方向是水平的,那麼在爲其子設置重量時,應將其寬度設置爲「0dp」,垂直方向高度設置爲0dp。並使用fitXY。

<LinearLayout 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:gravity="center" 
android:orientation="horizontal"> 

     <ImageButton 
      android:id="@+id/btn1" 
      android:layout_width="0dp" 
      android:layout_height="100dp" 
      android:layout_weight="0.246" 
      android:onClick="onDonGato" 
      android:scaleType="fitXY" 
      android:text="" /> 

     <ImageButton 
      android:id="@+id/btn2" 
      android:layout_width="0dp" 
      android:layout_height="match_parent" 
      android:layout_weight="0.246" 
      android:onClick="onDonGato" 
      android:scaleType="fitXY" 
      android:text="" /> 

     <ImageButton 
      android:id="@+id/btn3" 
      android:layout_width="0dp" 
      android:layout_height="match_parent" 
      android:layout_weight="0.246" 
      android:onClick="onDonGato" 
      android:scaleType="fitXY" 
      android:text="" /> 

</LinearLayout> 

希望這會幫助你。

+0

謝謝,夥計。非常有用。 – ArCiGo 2014-10-03 06:43:46

+0

很高興我幫你!並感謝您接受我的回答。 – Programmer 2014-10-03 12:41:55

0

據我所知,你不能適應以圖像按鈕爲中心的圖像......你擁有的選項位於文本的頂部,文字的底部,以及文本的左側和右側......

我建議您切換到ImageView而不是圖片按鈕...並創建一個樣式,使其具有與按鈕相同的效果。

另一個選項是通過GridView與和ImageView內但那更多的不必要的工作做...

0

你需要使用android:scaleType="fitXY"

0

您可以設置背景圖片,並設置高度和寬度。