2015-04-28 226 views
0

我在佈局上遇到了麻煩。我有ExpandableListView & ListView。當我查看片段ExpandableListView將重疊以上ListView(圖片)Android佈局重疊

我想要ExpandableListView應該出現後ListView

截圖:

<?xml version="1.0" encoding="utf-8"?> 
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:tools="http://schemas.android.com/tools" 
    xmlns:card_view="http://schemas.android.com/apk/res-auto" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    android:orientation="vertical"> 
    <android.support.v7.widget.CardView 
     android:layout_width="fill_parent" 
     android:layout_height="fill_parent"> 
     <ListView 
      android:minWidth="25px" 
      android:minHeight="25px" 
      android:layout_width="fill_parent" 
      android:layout_height="wrap_content" 
      android:id="@+id/climages" /> 
     <ExpandableListView 
      android:id="@+id/catExpandableListview" 
      android:minWidth="25px" 
      android:minHeight="25px" 
      android:groupIndicator="@android:color/transparent" 
      android:layout_width="fill_parent" 
      android:indicatorRight="45sp" 
      android:layout_height="wrap_content" /> 
     <ProgressBar 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:id="@+id/homeProgress" 
      android:layout_gravity="center" /> 
    </android.support.v7.widget.CardView> 
</FrameLayout> 

被修改:改變的RelativeLayout到的FrameLayout

+0

試着給你佈局的背景color.Most最好爲白色或其他任何你選擇 –

+0

@AnirudhSharma我想ExpandableListView應該出現的列表視圖後.. – Raj

+0

嘗試在擴展列表視圖的Android您的XML添加這一行:layout_below =「@ + id/climages」 –

回答

0

嘗試使用以下佈局代替above.I改性它和它給所期望的結果

<?xml version="1.0" encoding="utf-8"?> 
<android.support.v7.widget.CardView 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    xmlns:android="http://schemas.android.com/apk/res/android"> 

    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
     android:layout_width="fill_parent" 
     android:layout_height="fill_parent" 
     android:orientation="vertical"> 
     <ListView 
      android:minWidth="25px" 
      android:minHeight="25px" 
      android:layout_width="fill_parent" 
      android:layout_height="wrap_content" 
      android:id="@+id/climages" /> 
     <ExpandableListView 
      android:id="@+id/catExpandableListview" 
      android:minWidth="25px" 
      android:minHeight="25px" 
      android:groupIndicator="@android:color/transparent" 
      android:layout_width="fill_parent" 
      android:indicatorRight="45sp" 
      android:layout_height="wrap_content" /> 
    </LinearLayout> 

    <ProgressBar 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:id="@+id/homeProgress" 
     android:layout_gravity="center" /> 

</android.support.v7.widget.CardView> 
+0

ExpandableListView是不可見的。看起來它的列表視圖 – Raj

+0

@Raj我猜想可擴展列表視圖是可見的。問題可能是,因爲您在一個佈局中使用兩個列表視圖,並且您的第一個視圖包含足夠大的數據以隱藏展開式列表視圖。展開式列表視圖就在您的列表視圖下方。但您無法滾動它,因爲您的整個佈局不可滾動。 –

+0

@Raj嘗試隱藏列表視圖,然後查看是否存在可擴展列表視圖 –

0

嘗試使用android:layout_weight

<?xml version="1.0" encoding="utf-8"?> 
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android" 
     xmlns:tools="http://schemas.android.com/tools" 
     xmlns:card_view="http://schemas.android.com/apk/res-auto" 
     android:layout_width="fill_parent" 
     android:layout_height="fill_parent" 
     android:orientation="vertical"> 

     <android.support.v7.widget.CardView 
      android:layout_width="fill_parent" 
      android:layout_height="fill_parent"> 

      <RelativeLayout 
       android:layout_width="fill_parent" 
       android:layout_height="fill_parent"> 

       <LinearLayout 
        android:layout_width="fill_parent" 
        android:layout_height="fill_parent" 
        android:orientation="vertical"> 
        <ListView 
         android:minWidth="25px" 
         android:minHeight="25px" 
         android:layout_width="fill_parent" 
         android:layout_height="0dp" 
         android:id="@+id/climages" 
         android:layout_weight="0.5" /> 
        <ExpandableListView 
         android:layout_width="fill_parent" 
         android:layout_height="0dp" 
         android:id="@+id/catExpandableListview" 
         android:minWidth="25px" 
         android:minHeight="25px" 
         android:groupIndicator="@android:color/transparent" 
         android:indicatorRight="45sp" 
         android:layout_weight="0.5"/> 
       </LinearLayout> 

       <ProgressBar 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        android:id="@+id/homeProgress" 
        android:layout_gravity="center" /> 
      </RelativeLayout> 
    </android.support.v7.widget.CardView> 
</FrameLayout> 
+0

我不想給他們平等的高度。我只想在列表視圖下面展開列表視圖 – Raj

+0

我不認爲這樣做可能會出現重疊問題。也許作爲解決方法,您可以將您的兩個列表放入ScrollView中,並在每次刪除/添加項目時更新其高度。請注意,不建議在對方內使用兩個可滾動視圖 – Rami