说明:
ViewPagerIndicator可以理解成ViewPager的滑动时的一个指示器。在使用ViewPager的时候能够指示ViewPager所在的位置,就像Google Play中切换的效果一样,还能使用在应用初始化的介绍页面。
使用步骤:
在项目中关联ViewPagerIndicator的library 下载链接:https://github.com/JakeWharton/Android-ViewPagerIndicator
布局文件:必须和ViewPager搭配使用
<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>