I we know we can set any TextView for TabsLayout tabs without any problem, but at this time i dont have problem for setting TextView for tabs, but i want to have Image on tabs instead of text, for using this custom views i have this method:
private void setupTabIcons() {
    inflater = LayoutInflater.from(context);
    timeline = inflater.inflate(R.layout.joined_cafe_webs, null);
    TabLayout.Tab contentJoinedCafeWebsTab = tabsLayout.getTabAt(0);
    Objects.requireNonNull(contentJoinedCafeWebsTab).setCustomView(timeline);
    grid_list = inflater.inflate(R.layout.user_channels, null);
    TabLayout.Tab grid_listTab = tabsLayout.getTabAt(1);
    Objects.requireNonNull(grid_listTab).setCustomView(grid_list);
    post_items_view_pager.setCurrentItem(1);
    ...
}
joined_cafe_webs layout:
<?xml version="1.0" encoding="utf-8"?>
<ImageView xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:id="@+id/grid_feeds"
    android:layout_width="40dp"
    android:layout_height="40dp"
    android:layout_gravity="center"
    android:background="?attr/selectableItemBackgroundBorderless"
    android:padding="5dp"
    android:tint="@color/grey_40"
    app:srcCompat="@drawable/ic_time_line_black_24dp" />
after compile and run project on phone, tabs are empty
 
    