Android开源框架--ViewPagerIndicator的使用

时间:2022-12-26 13:50:52

说明:

  • ViewPagerIndicator可以理解成ViewPager的滑动时的一个指示器。在使用ViewPager的时候能够指示ViewPager所在的位置,就像Google Play中切换的效果一样,还能使用在应用初始化的介绍页面。

使用步骤:

<com.viewpagerindicator.TabPageIndicator
android:id="@+id/tpi"
android:layout_width="fill_parent"
android:layout_height="wrap_content" />

<android.support.v4.view.ViewPager
android:id="@+id/vp"
android:layout_width="fill_parent"
android:layout_height="0dp"
android:layout_weight="1" />
  • 将ViewPagerIndicator和ViewPager关联起来, ViewPager页面发生变化时, ViewPagerIndicator的指针也会跟随变化
mIndicator.setViewPager(mViewPager);
mAdapter = new mViewPagerAdapter();
mViewPager.setAdapter(mAdapter);
  • 在ViewPager的Adapter中,重写该方法:
/**
* 返回标题, 用于在indicator的指针中显示
*/

@Override
public CharSequence getPageTitle(int position) {
return title;
}
  • 需要给activity设置样式
<activity
android:name=".MainActivity"
android:theme="@style/Theme.PageIndicatorDefaults" />

修改样式:

  • 修改样式中的图片, 文字颜色等
<style name="Theme.PageIndicatorDefaults" parent="android:Theme">
<item name="vpiIconPageIndicatorStyle">@style/Widget.IconPageIndicator</item>
<item name="vpiTabPageIndicatorStyle">@style/Widget.TabPageIndicator</item>
</style>
  • 页签样式修改
<style name="Widget.TabPageIndicator" parent="Widget">
<item name="android:gravity">center</item>
<item name="android:background">@drawable/vpi__tab_indicator</item>//修改页签背景
<item name="android:paddingLeft">22dip</item>
<item name="android:paddingRight">22dip</item>
<item name="android:paddingTop">12dp</item>
<item name="android:paddingBottom">12dp</item>
<item name="android:textAppearance">@style/TextAppearance.TabPageIndicator</item>
<item name="android:textSize">16sp</item>
<item name="android:textColor">@drawable/vpi__tab_text_color</item>//修改页签字体颜色
<item name="android:maxLines">1</item>
</style>