RecycleView displaying only the first item
You need to change your item_layout height as wrap_content if your are using Android Support Library v 23.2.0 and above
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content">
<TextView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/tv_detail"/>
</RelativeLayout>
I too made this common mistake. Just change your parent LinearLayout - height should be "wrap_content"
<LinearLayout
android:layout_width="match_parent"
android:layout_height = "wrap_content"
..... >
..
..
</LinearLayout>
Set the height to wrap_content of the RelativeLayout in the item_layout.xml.
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content">
<TextView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/tv_detail"/>
</RelativeLayout>
I had same problem, when RecyclerView was wrapped in ScrollView. You should use NestedScrollView instead.
<android.support.v4.widget.NestedScrollView
android:layout_width="match_parent"
android:layout_height="match_parent">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical">
<!-- other content -->
<android.support.v7.widget.RecyclerView
android:id="@+id/my_recycler"
android:layout_width="match_parent"
android:layout_height="wrap_content"/>
</LinearLayout>
</android.support.v4.widget.NestedScrollView>