TabLayout配合ViewPager最普通使用

本來(lái)幾個(gè)月前用過(guò),現(xiàn)在忘了....現(xiàn)在記下來(lái),怕自己忘了

1. xml 文件中 :

<android.support.design.widget.TabLayout        //這里面還有很多屬性,看名字就知道什么用的,有空隨便試試
    android:id="@+id/tl_fragment_main_home_tablayout"
    android:layout_width="match_parent"
    android:layout_height="wrap_content" />
    
    //tab文字的造型可以自定義一個(gè)style文件給tablayout設(shè)置上
    如: app:tabTextAppearance="@style/xxx"

<View   //這個(gè)是viewpager和tablayout之間的一個(gè)線,不用管,裝飾用的
    android:layout_width="match_parent"
    android:layout_height="1dp"
    android:background="@drawable/main_screen_divider" />

<android.support.v4.view.ViewPager
    android:id="@+id/vp_fragment_main_home_viewpager"
    android:layout_width="match_parent"
    android:layout_height="0dp"
    android:layout_weight="1" />

2. java代碼中:

  1. 首先在viewpager的adpater中要實(shí)現(xiàn)一個(gè)getPageTitle()方法:

這個(gè)方法返回值就是在tablayout中各個(gè)tab顯示的文字

public class HomeFragmentViewPagerAdapter extends FragmentStatePagerAdapter {
    private List<Fragment> fragments;
    private List<String> titles;

    public HomeFragmentViewPagerAdapter(FragmentManager fm, List<Fragment> fragments, List<String> titles) {
        super(fm);
        this.fragments = fragments;
        this.titles = titles;

    @Override
    public CharSequence getPageTitle(int position) {
        return titles.get(position);
    }
}

  1. 將tablayout和viewpager關(guān)聯(lián):
tabLayout.setupWithViewPager(vp_fragment_main_home_viewpager);
tabLayout.setTabTextColors(XXX);
tabLayout.setSelectedTabIndicatorColor(YYY);
tabLayout.setTabMode(TabLayout.MODE_FIXED);//表示tablayout中的元素固定住不能滑動(dòng),
//tabLayout.setTabMode(TabLayout.MODE_SCROLLABLE) 表示tablayout中的元素可以滑動(dòng)

//其他屬性自己試,我所需要的已經(jīng)完成了
這樣你的tab就會(huì)顯示viewpager的title內(nèi)容了,

不過(guò)如果你對(duì)你的tab有更高的要求,要在里面顯示些奇怪的東西,也可以,那么在Adapter中設(shè)置title就無(wú)所謂了,反正你也會(huì)改掉

tabLayout.getTabAt(0).setText("11111111");      //當(dāng)然還有更多屬性可以更改,自己去試

tabLayout.getTabAt(1).setCustomView(R.layout.entry); //設(shè)置了自定義view,setText之類的方法就沒(méi)用了

1

1

1

1

1

1

1

1

1

1

1

1

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

推薦閱讀更多精彩內(nèi)容