Tablayout

MainActivity.xml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
tools:context=".TabBar_Activity">

<com.google.android.material.tabs.TabLayout
android:id="@+id/tab_layout"
android:layout_width="match_parent"
android:layout_height="wrap_content" />

<androidx.viewpager.widget.ViewPager
android:layout_width="match_parent"
android:id="@+id/view_pager_tab"
android:layout_height="match_parent" />

</LinearLayout>


MainActivity.xml

package com.example.myapplication06;

import androidx.appcompat.app.AppCompatActivity;
import androidx.viewpager.widget.ViewPager;

import android.os.Bundle;
import android.view.View;

import com.example.myapplication06.Adapter.Fragment_view_pager_Adapter;
import com.google.android.material.tabs.TabLayout;

public class TabBar_Activity extends AppCompatActivity {

private TabLayout tab_layout;
private ViewPager view_pager_tab;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_tab_bar);
tab_layout=findViewById(R.id.tab_layout);
view_pager_tab=findViewById(R.id.view_pager_tab);

tab_layout.addTab(tab_layout.newTab().setText("Home"));
tab_layout.addTab(tab_layout.newTab().setText("Status"));
tab_layout.addTab(tab_layout.newTab().setText("Call"));


tab_layout.addOnTabSelectedListener(new TabLayout.OnTabSelectedListener() {
@Override
public void onTabSelected(TabLayout.Tab tab) {
view_pager_tab.setCurrentItem(tab.getPosition());
}

@Override
public void onTabUnselected(TabLayout.Tab tab) {

}

@Override
public void onTabReselected(TabLayout.Tab tab) {

}
});

//Adapter
Fragment_view_pager_Adapter adapter=new Fragment_view_pager_Adapter(getSupportFragmentManager(),TabBar_Activity.this);
view_pager_tab.setAdapter(adapter);

view_pager_tab.addOnPageChangeListener(new TabLayout.TabLayoutOnPageChangeListener(tab_layout));

}
}


Adapter.java

package com.example.myapplication06.Adapter;

import android.app.Activity;

import androidx.annotation.NonNull;
import androidx.fragment.app.Fragment;
import androidx.fragment.app.FragmentManager;
import androidx.fragment.app.FragmentPagerAdapter;

import com.example.myapplication06.Fragment.OneFragment;
import com.example.myapplication06.Fragment.SecondFragment;
import com.example.myapplication06.TabBar_Activity;

public class Fragment_view_pager_Adapter extends FragmentPagerAdapter {

Activity activity;

public Fragment_view_pager_Adapter(@NonNull FragmentManager fm, TabBar_Activity tabBar_activity) {
super(fm);
activity = tabBar_activity;
}

@NonNull
@Override
public Fragment getItem(int position) {
switch (position) {
case 0:
OneFragment oneFragment=new OneFragment();
return oneFragment;

case 1:
SecondFragment secondFragment=new SecondFragment();
return secondFragment;

}
return null;
}

@Override
public int getCount() {
return 2;
}
}