2016-05-06 62 views
0

我想在我的活動Android中顯示一個包含兩個RecycleView的模式。所以,我有建立這個XML文件作爲模式:如何在一個活動中顯示兩個RecycleViews?

<?xml version="1.0" encoding="utf-8"?> 
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:tools="http://schemas.android.com/tools" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:paddingBottom="@dimen/activity_vertical_margin" 
    android:paddingLeft="@dimen/activity_horizontal_margin" 
    android:paddingRight="@dimen/activity_horizontal_margin" 
    android:paddingTop="@dimen/activity_vertical_margin" 
    android:background="@drawable/sfondo_app" 
    tools:context=".it.eresult.decipher.activity.AlertsActivity"> 

    <TextView 
     android:id="@+id/labelAgent" 
     android:textColor="@color/white" 
     android:textSize="18dp" 
     android:textStyle="bold" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:text="List of Agent " 
     android:background="@color/colorHeaderTable" 
     /> 



     <android.support.v7.widget.RecyclerView 
      android:id="@+id/recycler_agent_view" 
      android:layout_width="match_parent" 
      android:layout_height="wrap_content" 
      android:scrollbars="vertical" 
      android:layout_marginTop="28dp"/> 




    <TextView 
     android:id="@+id/labelReaction" 
     android:textColor="@color/white" 
     android:textSize="18dp" 
     android:textStyle="bold" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:text="List of Reaction " 
     android:background="@color/colorHeaderTable" 
     android:layout_marginTop="30dp" 
     /> 


     <android.support.v7.widget.RecyclerView 
      android:id="@+id/recycler_reaction_view" 
      android:layout_width="match_parent" 
      android:layout_height="wrap_content" 
      android:scrollbars="vertical" 
      android:layout_marginTop="28dp"/> 

</RelativeLayout> 

有了這個代碼,我可以看到兩個RecycleView疊加,而不是我想要顯示的文本,RecycleView下,在文字,第二循環視圖下。

可以這樣做嗎?

+0

是的,您可以在活動中顯示2個RecycleView – Krishna

回答

1

使用LinearLayout作爲家長你既RecyclerViews

您也可以將andorid:weight_sum ="1"RecyclerViews

這將確保您的兩個RecyclerViews採用相同的尺寸不管手機的屏幕尺寸有多大。

樣品:

<LinearLayout 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:tools="http://schemas.android.com/tools" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:paddingBottom="@dimen/activity_vertical_margin" 
    android:paddingLeft="@dimen/activity_horizontal_margin" 
    android:paddingRight="@dimen/activity_horizontal_margin" 
    android:paddingTop="@dimen/activity_vertical_margin" 
    android:background="@drawable/sfondo_app" 
    tools:context=".it.eresult.decipher.activity.AlertsActivity"> 

    <TextView 
     android:id="@+id/labelAgent" 
     android:textColor="@color/white" 
     android:textSize="18dp" 
     android:textStyle="bold" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:text="List of Agent " 
     android:background="@color/colorHeaderTable"/> 

    <android.support.v7.widget.RecyclerView 
     android:id="@+id/recycler_agent_view" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:scrollbars="vertical" 
     android:layout_marginTop="28dp"/> 

    <TextView 
     android:id="@+id/labelReaction" 
     android:textColor="@color/white" 
     android:textSize="18dp" 
     android:textStyle="bold" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:text="List of Reaction " 
     android:background="@color/colorHeaderTable" 
     android:layout_marginTop="30dp"/> 

    <android.support.v7.widget.RecyclerView 
     android:id="@+id/recycler_reaction_view" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:scrollbars="vertical" 
     android:layout_marginTop="28dp"/> 
</LinearLayout> 
0

您應該使用支持庫提供的相對百分比佈局。使用方便。例如

<android.support.percent.PercentRelativeLayout 
     xmlns:android="http://schemas.android.com/apk/res/android" 
     xmlns:app="http://schemas.android.com/apk/res-auto" 
     android:layout_width="match_parent" 
     android:layout_height="match_parent"> 
    <ImageView 
     app:layout_widthPercent="50%" 
     app:layout_heightPercent="50%" 
     app:layout_marginTopPercent="25%" 
     app:layout_marginLeftPercent="25%"/> 
</android.support.percent.PercentFrameLayout> 

http://developer.android.com/reference/android/support/percent/PercentRelativeLayout.html

0

我認爲最好的形式給出了使用具有垂直取向,而不是RelativeLayout的一個的LinearLayout,但如果你正在使用的RelativeLayout作爲根佈局,你應該做的somethinge,如:

<RelativeLayout ... > 

<TextView 
    android:id="@+id/labelAgent" 
    ... 
    /> 

    <android.support.v7.widget.RecyclerView 
     android:id="@+id/recycler_agent_view" 
     android:layout_below="@+id/labelAgent" 
     /> 

<TextView 
    android:id="@+id/labelReaction" 
    android:layout_below="@+id/recycler_agent_view" 
    /> 

    <android.support.v7.widget.RecyclerView 
     android:id="@+id/recycler_reaction_view" 
    android:layout_below="@+id/labelReaction" 
    /> 
</RelativeLayout> 
相關問題