Reputation:
i am wanto show my RecyclerView inside CardView with list, one by one, but my RecyclerView or CardView i think, can't set width to match parent.
This is My Activity Layout :
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_height="wrap_content"
android:layout_width="match_parent"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:card_view="http://schemas.android.com/tools"
android:gravity="center_horizontal">
<android.support.v7.widget.RecyclerView
android:id="@+id/rexyclerview"
android:layout_width="match_parent"
android:layout_height="wrap_content"
card_view:cardUseCompatPadding="true"
card_view:cardElevation="5dp"
card_view:cardCornerGroup="5dp"
android:scrollbars="vertical"
android:layout_marginLeft="10dp"
android:layout_marginRight="10dp"
android:layout_marginTop="10dp"
android:layout_marginBottom="10dp">
</android.support.v7.widget.RecyclerView>
</RelativeLayout>
And This Is My CardView Layout :
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:card_view="http://schemas.android.com/apk/res-auto"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="wrap_content"
>
<android.support.v7.widget.CardView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/cardview"
android:elevation="3dp"
card_view:cardUseCompatPadding="true"
card_view:cardCornerRadius="1dp"
card_view:cardElevation="4dp"
>
<!--
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content">
-->
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center_horizontal"
>
<TextView
android:layout_width="130sp"
android:layout_height="wrap_content"
android:id="@+id/tmpkode"
android:textSize="11sp"
android:maxLines="1"
/>
<TextView
android:layout_width="70sp"
android:layout_height="wrap_content"
android:layout_toRightOf="@id/tmpkode"
android:layout_marginLeft="10dp"
android:maxLines="1"
android:textSize="11sp"
android:id="@+id/tmptgla"
android:textAlignment="center"
/>
<TextView
android:layout_width="50sp"
android:layout_height="wrap_content"
android:textSize="11sp"
android:layout_toRightOf="@id/tmptgla"
android:id="@+id/tmpnamaz"
android:maxLines="1"
android:layout_marginLeft="10dp"
android:textAlignment="center"
/>
<TextView
android:layout_width="100sp"
android:textAlignment="center"
android:layout_toRightOf="@id/tmpnamaz"
android:layout_height="wrap_content"
android:maxLines="1"
android:textSize="11sp"
android:layout_marginLeft="10dp"
android:id="@+id/namasup"/>
<TextView
android:layout_width="130sp"
android:layout_height="wrap_content"
android:layout_toRightOf="@+id/namasup"
android:textSize="11dp"
android:id="@+id/nopenawar"
android:textAlignment="center"/>
</RelativeLayout>
<!-- </LinearLayout> -->
</android.support.v7.widget.CardView>
</LinearLayout>
My Adapter :
public ViewHolder onCreateViewHolder(ViewGroup parent, int viewType){
View Itemview = LayoutInflater.from(parent.getContext()).inflate(R.layout.card, parent, false);
return new ViewHolder(Itemview);
}
My Activity :
setContentView(R.layout.approvalpersetujuan);
recyclerView = (RecyclerView)findViewById(R.id.rexyclerview);
data = new ArrayList<>();
Prosesdataserver(0);
gridLayoutManager = new GridLayoutManager(this, 5);
recyclerView.setLayoutManager(gridLayoutManager);
Upvotes: 0
Views: 893
Reputation: 2223
If you need grid layout manager you can try this out
gridLayoutManager = new GridLayoutManager(this, 1);
Or you can go for a horizontal linear layout manager like so
layoutManager = new LinearLayoutManager(this, LinearLayoutManager.HORIZONTAL, false)
and set it to your recycler view
Upvotes: 1