TabLayout+ViewPage+Fragment简单使用的方法

来源:互联网 发布:联通网络优化中心 编辑:程序博客网 时间:2024/05/17 09:30
先是简单的布局,核心代码如下
                    <android.support.design.widget.TabLayout                        android:id="@+id/tab_FindFragment_title"                        android:layout_width="match_parent"                        app:tabIndicatorHeight="5dp"                        android:layout_height="wrap_content"                        android:background="@color/white"                        app:tabIndicatorColor="@color/page_tag_selected"                        app:tabSelectedTextColor="@color/page_tag_selected"                        app:tabTextColor="@color/gray"                        />                    <android.support.v4.view.ViewPager                        android:id="@+id/vp_product_detail"                        android:layout_width="match_parent"                        android:layout_height="500dp"                        android:background="@color/white" />

然后是控件的申明与设置

  private TabLayout tab_FindFragment_title; private ViewPager vp_content;

  vp_content = (ViewPager) findViewById(R.id.vp_product_detail);  tab_FindFragment_title = (TabLayout) findViewById(R.id.tab_FindFragment_title);  //设置TabLayout的模式 tab_FindFragment_title.setTabMode(TabLayout.MODE_FIXED); tab_FindFragment_title.setupWithViewPager(vp_content);  init(); initDatas();
设置TabLayout中的标题和ViewPager与Fragmen的绑定

 List<Fragment> mfragments = new ArrayList<Fragment>(); private List<String> mdate;
  private void initDatas() {        mDatas = new ArrayList<String>(Arrays.asList("图文详情", "产品参数", "用户评论"));    }    private void init() {        mfragments.add(productImageTextFragment);        mfragments.add(productEvaluationFragment);        mfragments.add(productParamsFragment);        //Toast.makeText(this,mDatas.toString(),Toast.LENGTH_SHORT).show();        vp_content.setAdapter(new ProductInfoPageAdapter(getSupportFragmentManager(), mfragments, mDatas));        vp_content.setCurrentItem(0);    }

最后设置adapter
package sunrun.com.mall.adapter;import android.support.v4.app.Fragment;import android.support.v4.app.FragmentManager;import android.support.v4.app.FragmentStatePagerAdapter;import android.view.ViewGroup;import java.util.List;import sunrun.com.mall.fragment.AllOrderFragment;/** * Created by 25002 on 2016-08-10. */public class ProductInfoPageAdapter extends FragmentStatePagerAdapter {    private List<Fragment> mfragments;    private List<String> list_Title;    public ProductInfoPageAdapter(FragmentManager fm, List<Fragment> fragmentlists, List<String> list_Title) {        super(fm);        this.mfragments=fragmentlists;        this.list_Title=list_Title;    }    @Override    public Fragment getItem(int position) {        return mfragments.get(position);    }    @Override    public int getCount() {        return list_Title.size();    }    //此方法用来显示tab上的名字    @Override    public CharSequence getPageTitle(int position) {        return list_Title.get(position % list_Title.size());    }    @Override    public void destroyItem(ViewGroup container, int position, Object object) {//        super.destroyItem(container, position, object);    }}





0 0
原创粉丝点击