本篇Blog记录ViewPager和ViewPager2
嵌套Fragment的效果图
ViewPager的使用
关于ViewPager的使用已经很常见了,这里在复习一下吧。配合TabLayout
-
布局文件
在ViewPager的布局中允许存在子view,我们可以把TabLayout作为ViewPager的子View写在ViewPager内部,也可以并列。
<androidx.viewpager.widget.ViewPager
android:id="@+id/vp_merchant_main"
android:layout_width="match_parent"
android:layout_height="0dp"
app:layout_constraintVertical_weight="1"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintTop_toBottomOf="@id/banner_merchant_main"
app:layout_constraintBottom_toBottomOf="parent">
<com.google.android.material.tabs.TabLayout
android:id="@+id/tab_layout_merchant_main"
android:layout_width="match_parent"
android:layout_height="50dp"
app:tabGravity="center"
app:tabIndicatorColor="@color/tabLayoutIndicatorStartColor"
app:tabSelectedTextColor="@color/textColor"
app:tabTextAppearance="@android:style/TextAppearance.Holo"
app:tabTextColor="@color/defaultTextColor" />
</androidx.viewpager.widget.ViewPager>
-
Java代码
代码中我们只需要把Fragment和Titles传入Adapter,然后再设置到ViewPager上就可以了。
我们也可以调用Tablayout的setupWithViewPager()方法使TabLayout和ViewPager进行绑定
// ViewPager处理
ArrayList<Fragment> fragmentList = new ArrayList<>();
fragmentList.add(new AllProductFragment(this));
fragmentList.add(new EvaluationFragment(this));
String[] fragmentTitles = {
"商品", "评价"};
ViewPagerScrollAdapter scrollAdapter = new ViewPagerScrollAdapter(getSupportFragmentManager());
scrollAdapter.