ViewPagerIndicator的使用方法

使用方法:
 
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代碼: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代碼:android

@Override//獲取title,從而indicator能夠今後獲取title
public CharSequence getPageTitle(int position) {
  return mChildren.get(position).title;//這裏具體實現方法本身寫
}
 

5.在清單文件中給ViewpagerIndicator所在的activity設置主題,清單文件:ide

  <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,它才能正確地指示。
相關文章
相關標籤/搜索