Android中使用ViewPagerIndicator实现一个导航栏指示器
发布时间:2023-05-16 02:21:58
ViewPagerIndicator 是 Android 第三方开源库中比较好用的一个导航栏指示器,它可以很方便地为 ViewPager 提供指示器。
实现步骤:
1.添加依赖
在 build.gradle 中添加依赖:
implementation 'com.viewpagerindicator:library:2.4.1'
2.编写布局
在布局文件中添加 ViewPager 和指示器:
<androidx.viewpager.widget.ViewPager
android:id="@+id/viewPager"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="1" />
<com.viewpagerindicator.CirclePageIndicator
android:id="@+id/circleIndicator"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:padding="10dp"
android:layout_gravity="center_horizontal|bottom" />
CirclePageIndicator 是一个圆形指示器,还有其他的指示器可以选择,例如LinePageIndicator。
3.编写适配器
使用适配器为 ViewPager 提供数据源。在本例中,我们使用 FragmentPagerAdapter。
public class MyPagerAdapter extends FragmentPagerAdapter {
private List<Fragment> fragmentList;
public MyPagerAdapter(FragmentManager fm, List<Fragment> fragmentList) {
super(fm, BEHAVIOR_RESUME_ONLY_CURRENT_FRAGMENT);
this.fragmentList = fragmentList;
}
@Override
public Fragment getItem(int position) {
return fragmentList.get(position);
}
@Override
public int getCount() {
return fragmentList.size();
}
}
4.设置适配器和指示器
在 Activity 或 Fragment 中设置适配器和指示器:
ViewPager viewPager = findViewById(R.id.viewPager); List<Fragment> fragmentList = new ArrayList<>(); //添加 Fragment MyPagerAdapter myPagerAdapter = new MyPagerAdapter(getSupportFragmentManager(), fragmentList); viewPager.setAdapter(myPagerAdapter); //设置指示器 CirclePageIndicator circlePageIndicator = findViewById(R.id.circleIndicator); circlePageIndicator.setViewPager(viewPager);
这样,就成功实现了一个 ViewPagerIndicator 指示器。
总结:
ViewPagerIndicator 是一个非常方便的第三方开源库,可以快速地为 ViewPager 添加指示器。通过本文的步骤,我们已经能够使用 ViewPagerIndicator 为 ViewPager 添加指示器。
当然,还有其他的指示器可以选择,可以根据自己的需要进行选择。
