2014-03-03 41 views
0

enter image description here 這兩個button在下面的代碼中被設置爲wrap_content並且沒有填充。但是,垂直方向仍然有一些填充。如果我將android:layout_height設置爲固定參數,則填充可能會消失。但我確實想使用wrap_content而不是固定的高度。wrap_content在LinearLayout中不起作用

編輯: 現在,我不得不使用DIP,不建議這樣做,因爲文字大小,以確保在按鈕上的文本,而在DIP使用固定的高度。期待更好的解決方案!

<LinearLayout 
       android:layout_width="match_parent" 
       android:layout_height="wrap_content" 
       android:orientation="horizontal" 
       android:layout_marginBottom="5dp"> 

       <LinearLayout 
        android:layout_width="0dp" 
        android:layout_height="wrap_content" 
        android:layout_weight="1.0" 
        android:layout_marginLeft="5dp" 
        android:orientation="vertical"> 

        <TextView 
         android:layout_width="wrap_content" 
         android:layout_height="wrap_content" 
         android:text="@string/account_balance"/> 

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

         <TextView 
          android:id="@+id/tvBa" 
          android:layout_width="wrap_content" 
          android:layout_height="wrap_content"/> 

         <ImageButton 
          android:layout_width="wrap_content" 
          android:layout_height="wrap_content" 
          android:background="#00000000" 
          android:src="@drawable/video_list_price"/> 
        </LinearLayout> 
       </LinearLayout> 

       <Button 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        android:background="@drawable/record_selector" 
        android:gravity="center" 
        android:textColor="#ffffffff" 
        android:text="@string/charge_record"/> 

       <Button 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        android:layout_marginLeft="10dp" 
        android:background="@drawable/charge_selector" 
        android:gravity="center" 
        android:textColor="#ffffffff" 
        android:text="@string/charge"/> 
      </LinearLayout> 
+0

那麼RightNow公司必須使用高度wrapcontent ......,那麼你想要什麼? – rajshree

+0

你在哪裏得到一些填充..你可以發佈快照 – Sush

+0

是的,我正在使用wrap_content。但是,在給予wrap_content之後,我在按鈕 – ZhangLei

回答

0

默認情況下,容器內容對齊頂部。

  <LinearLayout 
       android:layout_width="0dp" 
       android:layout_height="wrap_content" 
       android:layout_weight="1.0" 
       android:layout_marginLeft="5dp" 
       android:orientation="vertical"> 

       <TextView 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        android:text="@string/account_balance"/> 

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

        <TextView 
         android:id="@+id/tvBa" 
         android:layout_width="wrap_content" 
         android:layout_height="wrap_content"/> 

        <ImageButton 
         android:layout_width="wrap_content" 
         android:layout_height="wrap_content" 
         android:background="#00000000" 
         android:src="@drawable/video_list_price"/> 
       </LinearLayout> 
      </LinearLayout> 

與Button相比,此內容的高度更高。

  <Button 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:background="@drawable/record_selector" 
       android:gravity="center" 
       android:textColor="#ffffffff" 
       android:text="@string/charge_record"/> 

所以實際上按鈕現在沒有填充,但由於您的根LinearLayout的第一項需要更多的空間。

在您的根LinearLayout中添加一個更多的屬性。 安卓重力= 「center_vertical」

<LinearLayout 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:layout_marginBottom="5dp" 
    android:orientation="horizontal" 
    android:gravity="center_vertical" 
    android:background="#756846"> 
0

刪除此行:

android:layout_weight="1.0" 

並更改0dp值WRAP_CONTENT

--EDITED

你有2個可能的來源的填充: 第一個是初始按鈕背景大小 - 它不會被縮小,只有最多

第二個是按鈕的默認風格 - 剛剛成立填充= 0dp

+0

這是垂直線性佈局的參數,看起來跟這兩個按鈕沒什麼關係。它對我不起作用謝謝你的回覆 – ZhangLei

+0

是的,它對這些按鈕有「某些東西」,如果重量設置爲某個值,並且按鈕沒有設置重量,那麼帶有重量的元件會嘗試獲得儘可能多的空間。 – piotrpo

+1

是的,由於根部佈局是水平的,我設置了重量來保持按鈕位於根佈局的右側,但垂直方向上按鈕的高度不受此重量的影響噸。 – ZhangLei

相關問題