ViewPagerIndicator使用
16lz
2021-01-23
1. 引入ViewPagerIndicator库
com.viewpagerindicator.TabPageIndicator android:id="@+id/indicator" android:layout_width="fill_parent" android:layout_height="wrap_content" />
3. mIndicator.setViewPager(mViewPager);//将viewpager和mIndicator关联起来,必须在viewpager设置完adapter后才能调用
4. 重写PagerAdapter方法,返回页面标题
/**
* 重写此方法,返回页面标题,用于viewpagerIndicator的页签显示
*/
@Override
public CharSequence getPageTitle(int position) {
return mNewsTabData.get(position).title;
}
5. 自定义样式修改
找到所使用的indicator源码,进行样式修改一般使用的是TabPageIndicator
@Overridepublic boolean dispatchTouchEvent(MotionEvent ev) {getParent().requestDisallowInterceptTouchEvent(true);// 请求父控件不要对事件进行拦截return super.dispatchTouchEvent(ev);}可以自己在源码中添加布局选择器文件,进行字体颜色更改
在vpi_styles.xml中更改样式
<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_indicator</item> <item name="android:maxLines">1</item> </style>6.当为viewpager设置setOnPageChangeListener时会不起作用,此时应该设置给对应的indicator
更多相关文章
- Android 海贼王连连看游戏源码
- 在服务器上使用 gradle 打包 android 源码
- Android中自定义Dialog样式
- Android显示横幅样式通知
- android 关于图片的放大,缩小,旋转功能的实现(附源码)
- 将ffmpeg编译到android 源码
- [置顶] Android学习进阶路线导航线路(Android源码分享)
- android音乐播放器源案例源码
- 在Ubuntu10.04上设置和下载android4.0源码