I'm trying to load views with image and text by using CardView in the list. However, there is a divider between the cards.
This is my output:
I'm trying to do like in this video, no divider lines.
Here's my XML code.
activity_cat_list.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
              android:orientation="vertical"
              android:layout_width="match_parent"
              android:layout_height="match_parent">
    <ListView
        android:id="@+id/lvCat"
        android:layout_width="match_parent"
        android:layout_height="match_parent"></ListView>
</LinearLayout>
item_cat
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
    xmlns:card_view="http://schemas.android.com/apk/res-auto"
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:padding="8dp">
    <android.support.v7.widget.CardView
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:background="#FEFEFE"
        android:layout_margin="8dp"
        app:cardCornerRadius="4dp"
        card_view:cardCornerRadius="4dp"
        app:cardPreventCornerOverlap="false"
        app:cardUseCompatPadding="true"
        card_view:cardElevation="8dp">
        <!-- Main Content View -->
        <RelativeLayout
            android:layout_width="match_parent"
            android:layout_height="match_parent">
            <ImageView
                android:id="@+id/ivCat"
                android:layout_width="match_parent"
                android:layout_height="250dp"
                android:layout_alignParentTop="true"
                android:scaleType="centerCrop"/>
            <TextView
                android:id="@+id/tvCatName"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_below="@+id/ivCat"
                android:text="Name"
                android:maxLines="3"
                android:padding="8dp"
                android:textColor="#222"
                android:textStyle="bold"
                android:textSize="22dp" />
            <TextView
                android:id="@+id/tvDescription"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_below="@+id/tvCatName"
                android:text="Description"
                android:maxLines="3"
                android:padding="8dp"
                android:textColor="#666"
                android:textSize="14dp" />
        </RelativeLayout>
    </android.support.v7.widget.CardView>
</LinearLayout>
edit 1: add CatAdapter.java
public class CatAdapter extends ArrayAdapter<Cat> {
    public CatAdapter(Context context, ArrayList<Cat> cats) {
        super(context,0,cats);
    }
    @NonNull
    @Override
    public View getView(int position, View convertView, ViewGroup parent) {
        //get data item from this position
        Cat cats = getItem(position);
        //check if existing view is being reused, otherwise inflate the views
        if (convertView == null)
            convertView = LayoutInflater.from(getContext()).inflate(R.layout.item_cat, parent, false);
        //lookup view for data population
        TextView tvName = (TextView)convertView.findViewById(R.id.tvCatName);
        TextView tvDescription = (TextView)convertView.findViewById(R.id.tvDescription);
        ImageView ivCat = (ImageView)convertView.findViewById(R.id.ivCat);
        //populate into template view from data source
        tvName.setText(cats.getName());
        tvDescription.setText(cats.getDescription());
        Glide.with(getContext()).load(cats.getImages()).into(ivCat);
        return convertView;
    }
}
