主布局

<?  version=\"1.0\" encoding=\"utf-8\"?>
<RelativeLayout  ns:android=\"http://schemas.android.com/apk/res/android\"
    android:layout_width=\"match_parent\"
    android:layout_height=\"match_parent\"
     ns:app=\"http://schemas.android.com/apk/res-auto\">
    <LinearLayout
        android:id=\"@+id/liner_layout\"
        android:orientation=\"horizontal\"
        android:layout_width=\"match_parent\"
        android:layout_height=\"wrap_content\">
        <android.support.design.widget.TabLayout
            android:id=\"@+id/tab_layout\"
            app:tabTextColor=\"#DDDDDD\"
            android:background=\"#d43c3c\"
            app:tabIndicatorColor=\"#FFFFFF\"
            app:tabSelectedTextColor=\"#FFFFFF\"
            android:layout_weight=\"5\"
            android:layout_width=\"0dp\"
            android:layout_height=\"50dp\"></android.support.design.widget.TabLayout>
        <RelativeLayout
            android:background=\"#d43c3c\"
            android:layout_weight=\"5\"
            android:layout_width=\"0dp\"
            android:layout_height=\"50dp\">
            <ImageView
                android:layout_marginRight=\"15dp\"
                android:layout_alignParentRight=\"true\"
                android:layout_centerVertical=\"true\"
                android:src=\"@drawable/write\"
                android:layout_width=\"30dp\"
                android:layout_height=\"30dp\" />
        </RelativeLayout>
    </LinearLayout>
    <android.support.v4.view.ViewPager
        android:id=\"@+id/hot_ViewPager\"
        android:layout_below=\"@+id/liner_layout\"
        android:layout_width=\"match_parent\"
        android:layout_height=\"match_parent\">
    </android.support.v4.view.ViewPager>
</RelativeLayout>
public class ForumActivityPresenter extends AppDelegate{

    private ViewPager hot_ViewPager;
    private TabLayout tab_layout;

    @Override
    public int getLayoutId() {
        return R.layout.activity_forum;
    }

    @Override
    public void initData() {
        super.initData();
        hot_ViewPager = get(R.id.hot_ViewPager);
        tab_layout = get(R.id.tab_layout);
        //V适配器
        MyPagerAdapter myPagerAdapter = new MyPagerAdapter(((ForumActivity)context).getSupportFragmentManager());
        //添加fragment
        ArrayList<Fragment> fragments = new ArrayList<>();
        fragments.add(new Fragment01());
        fragments.add(new Fragment02());
        fragments.add(new Fragment03());
        myPagerAdapter.setFragments(fragments);

        //添加头
        ArrayList<String>  s = new ArrayList<>();
         s.add(\"全部帖子\");
         s.add(\"热门帖子\");
         s.add(\"精华帖子\");
        myPagerAdapter.set s( s);
        //设置tablayout的模式
        tab_layout.setTabMode(TabLayout.MODE_FIXED);
        hot_ViewPager.setAdapter(myPagerAdapter);
        //关联viewpager
        tab_layout.setupWithViewPager(hot_ViewPager);
    }

    private Context context;
    @Override
    public void getContext(Context context) {
        super.getContext(context);
        this.context = context;
    }
}

适配器

public class MyPagerAdapter extends FragmentPagerAdapter{
    ArrayList<Fragment> fragments;
    ArrayList<String>  s;

    public MyPagerAdapter(FragmentManager fm) {
        super(fm);
    }

    public void setFragments(ArrayList<Fragment> fragments) {
        this.fragments = fragments;
    }

    public void set s(ArrayList<String>  s) {
        this. s =  s;
    }

    @Override
    public Fragment getItem(int position) {
        return fragments.get(position);
    }

    @Override
    public int getCount() {
        return fragments.size();
    }

    @Override
    public CharSequence getPage (int position) {
        return  s.get(position);
    }
}

 

收藏 打印