ViewPagerIndicator的使用方法

来源:互联网 发布:淘宝原创衣服怎么弄 编辑:程序博客网 时间:2024/06/07 06:37
使用方法:
 
1.引用library,并解决support v4 jar包冲突
 
2.布局文件中添加viewpager和viewpagerindicator,布局文件:
复制代码
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"    xmlns:tools="http://schemas.android.com/tools"    android:layout_width="match_parent"    android:layout_height="match_parent"    android:orientation="vertical" >    <com.viewpagerindicator.TabPageIndicator        android:id="@+id/vpi_indicator"        android:layout_width="match_parent"        android:layout_height="wrap_content"        android:background="@drawable/base_action_bar_bg" >    </com.viewpagerindicator.TabPageIndicator>    <android.support.v4.view.ViewPager        android:id="@+id/vp_news"        android:layout_width="match_parent"        android:layout_height="0dp"        android:layout_weight="1" >    </android.support.v4.view.ViewPager></LinearLayout>
复制代码

3.声明viewpagerindicator,java代码:

复制代码
vp_news.setAdapter(new NewsTabPagerAdapter());//给viewpager设置数据适配器 // ViewPagerIndicator声明TabPageIndicator indicator = (TabPageIndicator) mActivity.findViewById(R.id.vpi_indicator);indicator.setViewPager(vp_news);// 绑定必须要在viewpager设置好数据适配器之后
复制代码

4.viewpager数据适配器类中重写getPageTitle方法,java代码:

@Override//获取title,从而indicator可以从此获取titlepublic CharSequence getPageTitle(int position) {  return mChildren.get(position).title;//这里具体实现方法自己写} 

5.在清单文件中给ViewpagerIndicator所在的activity设置主题,清单文件:

  <activity            android:name=".MainActivity"            android:theme="@style/Theme.PageIndicatorDefaults" />

其他样式可在该主题里改,得出一个黑色的背景,如图:

 

 
附加:想更换背景颜色,可以在当前页面所在的activity的布局文件里更改背景颜色。例如,我的mainActivity布局文件如下:
复制代码
<?xml version="1.0" encoding="utf-8"?><FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"    android:id="@+id/fl_main"    android:background="#fff"    android:layout_width="match_parent"    android:layout_height="match_parent" ></FrameLayout>
复制代码

 

注意:使用indicator的时候,如果我们想要给viewpager设置页面切换监听事件setOnPageChangeListener(new MyPageChangeListener());
要给indicator设置,而不要给viewpager设置,否则没反应,换句话说,如果我们不小心给viewpager设置页面切换监听事件,而又没反应的时候,或者出现奇怪的现象,就应该想到这个问题。因为事件要传递给indicator,它才能正确地指示。
1 0
原创粉丝点击