2016-06-12 52 views
1
<android.support.v7.widget.RecyclerView 
    android:id="@+id/education_recycle_view" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:scrollbars="vertical"> 
</android.support.v7.widget.RecyclerView> 

這是我當前用於回收視圖的xml佈局文件。如何處理回收站視圖中的空數據?

如何處理回收站視圖中的空數據? 是否可以在放置文本時在同一個佈局中顯示「無數據」?

感謝

回答

2

這是我要做的事:

在XML:

<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent"> 

<TextView 
    android:id="@+id/tv_no_data" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:gravity="center" 
    android:text="@string/empty_text" 
    android:textAppearance="?android:textAppearanceMedium" 
    android:visibility="invisible" /> 

<android.support.v7.widget.RecyclerView 
    android:id="@+id/education_recycle_view" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:scrollbars="vertical" 
    app:layoutManager="LinearLayoutManager" /> 
</FrameLayout> 

,並在Activity

if (!data.isEmpty()) { 
         //if data is available, don't show the empty text 
         emptyText.setVisibility(View.INVISIBLE); 
         RecyclerAdapter adapter = new RecyclerAdapter(data); // pass the data to your adapter here 
         recyclerView.setAdapter(adapter); 

        } else 
         emptyText.setVisibility(View.VISIBLE); 

讓我知道,如果你需要更多信息。

+0

感謝Viswesh和Ishata,我遵循指示和工作。 –

+0

很高興幫助。 :) –

+0

您需要觀察適配器中的數據集。如果數據集爲空,則只顯示空白視圖。如果項目被動態移除,此解決方案將不起作用。 – Pawan

0

創建textview與文本 「沒有可用數據」。而在你的java把

if(noData) 
{ 
    textview.setVisibility(View.Visible); 
    recylerView.setVisibility(View.Gone); 
}else{ 
    textview.setVisibility(View.Gone); 
    recylerView.setVisibility(View.Visible); 
} 
+0

在哪裏我把textView佈局?在相同的佈局或不是?條件「noData」,我把那個條件?在適配器或活動? –

+0

@AzdaFirmansyah取決於你如何獲取數據。我會說當你提取數據時,如果沒有數據,可以使'TextView'可見。否則,將數據傳遞給適配器,並使'TextView'不可見/消失。 –