频道管理TabLayout+布局

package weektest.baway.com.myapplication.frag;

import android.content.Intent;
import android.support.design.widget.TabLayout;
import android.support.v4.app.Fragment;
import android.support.v4.view.ViewPager;
import android.view.View;
import android.widget.ImageView;

import java.util.ArrayList;

import weektest.baway.com.myapplication.R;
import weektest.baway.com.myapplication.TWWActivity;
import weektest.baway.com.myapplication.adapter.TabPargerAdapter;
import weektest.baway.com.myapplication.base.BaseFragment;
import weektest.baway.com.myapplication.tab.Tab01;
import weektest.baway.com.myapplication.tab.Tab02;

/**

  • @Author:梁金子

  • @Date:2019/3/5 13:48

  • @Description:描述信息
    */
    public class Frag01 extends BaseFragment {

    private TabLayout tab;
    private ViewPager pager;
    private ImageView image;
    private TabPargerAdapter adapter;
    private ArrayList listT;
    private ArrayList listP;

    @Override
    protected int bindLayout() {
    return R.layout.frag01;
    }

    @Override
    protected void initView() {
    tab = bindView(R.id.tab);
    pager = bindView(R.id.ppager);
    image = bindView(R.id.image);
    }

    @Override
    protected void initData() {
    // 显示Viewpager的数据
    listP = new ArrayList<>();
    listP.add(new Tab01());
    listP.add(new Tab02());
    // tab的数据
    listT = new ArrayList<>();
    for (int t = 0; t< listP.size(); t++){
    listT.add(“羊”+t);
    }
    // 适配器
    adapter = new TabPargerAdapter(getActivity().getSupportFragmentManager(),listP,listT);
    pager.setAdapter(adapter);
    // 关联
    tab.setupWithViewPager(pager);

    }

    @Override
    protected void bindEvent() {
    image.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View v) {
    Intent intent = new Intent(getActivity(), TWWActivity.class);
    intent.putStringArrayListExtra(“key”,listT);
    startActivityForResult(intent,100);
    }
    });
    }
    // 接受回传值

    @Override
    public void onActivityResult(int requestCode, int resultCode, Intent data) {
    super.onActivityResult(requestCode, resultCode, data);
    if (resultCode200){
    // 取出集合
    ArrayList listTnew = data.getStringArrayListExtra(“key”);
    // 清空所有页面和数据
    listT.clear();
    listP.clear();
    tab.removeAllTabs();//把tab数据清空
    // 合并集合
    listT.addAll(listTnew);
    // 把数据设置给tab
    for (int t=0;t<listT.size();t++){
    // 创建一个tab
    TabLayout.Tab tabs = tab.newTab();
    // 给tabs设置标题
    tabs.setText(listT.get(t));
    // 把新的tab放进tab中
    tab.addTab(tabs);
    // 重新添装fragment
    String ss=listT.get(t);
    if (t
    0){
    // 展示到第一个页面
    listP.add(new Tab01());
    }else {
    listP.add(new Tab02());
    }
    }
    // 刷新适配器
    adapter.notifyDataSetChanged();
    tab.setupWithViewPager(pager);
    }
    }
    }

==================================================================================================================================

<?xml version="1.0" encoding="utf-8"?>

<LinearLayout
    android:layout_width="match_parent"
    android:layout_height="50dp"
    android:orientation="horizontal">
    <android.support.design.widget.TabLayout
        android:id="@+id/tab"
        app:tabMode="scrollable"
        android:layout_width="0dp"
        android:layout_height="match_parent"
        android:layout_weight="1" />

    <ImageView
        android:id="@+id/image"
        android:layout_width="50dp"
        android:layout_height="50dp"
        android:src="@drawable/people_flase" />
</LinearLayout>

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

猜你喜欢

转载自blog.csdn.net/ddg123_/article/details/88286884