普通版TabLayout+Viewpager的结合使用

<android.support.design.widget.TabLayout
android:id="@+id/tablayout"
android:layout_width=“match_parent”
android:layout_height=“wrap_content”
/>
<android.support.v4.view.ViewPager
android:id="@+id/viewpager"
android:layout_width=“match_parent”
android:layout_height=“0px”
android:layout_weight=“1”
android:background="@android:color/white"/>

导包
implementation ‘com.android.support:design:28.0.0’

接着写

public class Frag_01 extends BaseFrag_01{
private ArrayList fragmentList;
private ArrayList list_title;
private TabLayout tableLayout;
private ViewPager pager;
private View view;

@Nullable
@Override
public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
view = inflater.inflate(R.layout.frag_01,container,false);
findViewById();
initViewPager();
return view;
}
@Override
public void findViewById() {
tableLayout = view.findViewById(R.id.tablayout);
pager = view.findViewById(R.id.viewpager);
}

@Override
public void initViewPager() {
fragmentList = new ArrayList<>();
fragmentList.add(new Frag1());
fragmentList.add(new Frag2());
list_title = new ArrayList<>();
list_title.add(“one”);
list_title.add(“two”);
pager.setAdapter(new Frag_01_Adapter(getActivity().getSupportFragmentManager(), fragmentList, list_title));
tableLayout.setupWithViewPager(pager);
}

在Adapter中写

public class Frag_01_Adapter extends FragmentPagerAdapter {
private List fragmentList;
private List list_Title;
public Frag_01_Adapter(FragmentManager fm , List fragmentList, List list_Title) {
super(fm);
this.fragmentList = fragmentList;
this.list_Title = list_Title;
}
@Override
public Fragment getItem(int position) {
return fragmentList.get(position);
}
@Override
public int getCount() {
return fragmentList.size();
}

@Nullable
@Override
public CharSequence getPageTitle(int position) {
return list_Title.get(position);
}
}

猜你喜欢

转载自blog.csdn.net/qq_43677688/article/details/86240499