2016-10-02 105 views
0

我有一個線性佈局,有兩個列表視圖,一個文本視圖和另一個線性佈局來容納一些按鈕。我希望第二個listview的高度是第一個的兩倍。我已經設置的兩個列表視圖0dp高度並且給了第一1:1的layout_weight和的2的第二權重,並且然後設置weightSum含視圖的至3下面是實際的佈局:layout_weight在模擬器中工作,而不是在設備上

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:orientation="vertical" 
    android:layout_width="match_parent" 
    android:weightSum="3" 
    android:layout_height="match_parent"> 
    <ListView 
     android:layout_width="match_parent" 
     android:layout_height="0dp" 
     android:layout_weight="1" 
     android:id="@+id/categoryList" /> 
    <ListView 
     android:layout_width="match_parent" 
     android:layout_height="0dp" 
     android:layout_weight="2" 
     android:id="@+id/itemList" /> 
    <TextView 
     android:id="@+id/walletStr" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" /> 
    <LinearLayout 
     android:orientation="horizontal" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content"> 
     <Button 
      android:id="@+id/cancelBtn" 
      android:text="cancel" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" /> 
     <Button 
      android:id="@+id/buyBtn" 
      android:text="buy" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" /> 
    </LinearLayout> 
</LinearLayout> 

在模擬器上,這會產生所需的效果,但在實際設備上,幾乎所有空間都會進入頂部列表視圖。

任何想法?提前致謝。

+0

刪除'LinearLayout'外部'weightSum'屬性。 –

回答

0

線性佈局沒有隻有2個列表,也有更多的組件,你必須考慮。 weightSum應該被劃分爲這個線性佈局的所有組件。

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:orientation="vertical" 
    android:layout_width="match_parent" 
    android:weightSum="7" 
    android:layout_height="match_parent"> 
    <ListView 
     android:layout_width="match_parent" 
     android:layout_height="0dp" 
     android:layout_weight="2" 
     android:id="@+id/categoryList" /> 
    <ListView 
     android:layout_width="match_parent" 
     android:layout_height="0dp" 
     android:layout_weight="4" 
     android:id="@+id/itemList" /> 
    <TextView 
     android:id="@+id/walletStr" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:layout_weight="0.5"/> 
    <LinearLayout 
     android:orientation="horizontal" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:layout_weight="0.5"> 
     <Button 
      android:id="@+id/cancelBtn" 
      android:text="cancel" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" /> 
     <Button 
      android:id="@+id/buyBtn" 
      android:text="buy" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" /> 
    </LinearLayout> 
</LinearLayout> 
相關問題