需要依赖
implementation 'com.android.support:design:27.+'
//布局
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" xmlns:app="http://schemas.android.com/apk/res-auto" android:orientation="vertical"> <LinearLayout android:layout_width="match_parent" android:layout_height="50dp" android:orientation="horizontal" > <android.support.design.widget.TabLayout android:id="@+id/tb_layout" android:layout_width="0dp" android:layout_height="wrap_content" android:layout_gravity="top" android:layout_weight="1" app:tabMode="scrollable" /> <ImageView android:id="@+id/image_jia" android:layout_width="50dp" android:layout_height="match_parent" android:src="@drawable/ic_fanhui_24dp" /> </LinearLayout> <com.bwei.adapter.MyViewPager android:id="@+id/my02view_pager" android:layout_width="match_parent" android:layout_height="match_parent"/> </LinearLayout>
//java代码
package com.bwei.fragment; import android.content.Intent; import android.os.Bundle; import android.support.annotation.Nullable; import android.support.design.widget.TabLayout; import android.support.v4.app.Fragment; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import android.widget.ImageView; import com.bwei.Xmu.Channel1Activity; import com.bwei.Xmu.R; import com.bwei.adapter.MyViewPager; import com.bwei.adapter.MytabFragment; import com.bwei.tabfragmnet.Fragment01; import com.bwei.tabfragmnet.Fragment02; import com.bwei.tabfragmnet.Fragment03; import com.bwei.tabfragmnet.Fragment04; import java.util.ArrayList; import java.util.List; /** * Created by Jack Lee on 2018/7/19. */ public class Fragment_dongtai extends Fragment { private TabLayout tb_layout; private ImageView image_jia; private MyViewPager my02view_pager; @Nullable @Override public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) { View inflate = inflater.inflate(R.layout.layout_dongtai, container, false); initView(inflate); return inflate; } @Override public void onActivityCreated(@Nullable Bundle savedInstanceState) { super.onActivityCreated(savedInstanceState); //创建集合 List<Fragment> list = new ArrayList<>(); list.add(new Fragment02()); list.add(new Fragment01()); list.add(new Fragment03()); list.add(new Fragment04()); //tab_layout.setTabMode(TabLayout.MODE_SCROLLABLE); //创建适配器 MytabFragment mytabFragment = new MytabFragment(getChildFragmentManager(), list); my02view_pager.setAdapter(mytabFragment); tb_layout.setupWithViewPager(my02view_pager); image_jia.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { Intent intent = new Intent(getActivity(),Channel1Activity.class); startActivity(intent); } }); } private void initView(View inflate) { tb_layout = (TabLayout) inflate.findViewById(R.id.tb_layout); image_jia = (ImageView) inflate.findViewById(R.id.image_jia); my02view_pager = (MyViewPager) inflate.findViewById(R.id.my02view_pager); } }
//Adapter
package com.bwei.adapter; import android.support.v4.app.Fragment; import android.support.v4.app.FragmentManager; import android.support.v4.app.FragmentPagerAdapter; import java.util.List; /** * Created by Jack Lee on 2018/7/25. * name:Juck Lee */ public class MytabFragment extends FragmentPagerAdapter { private List<Fragment> list; private String[] title = {"ALL","Bll","Cll","DLL"}; public MytabFragment(FragmentManager fm, List<Fragment> list) { super(fm); this.list = list; } @Override public Fragment getItem(int position) { return list.get(position); } @Override public int getCount() { return list.size(); } @Override public CharSequence getPageTitle(int position) { return title[position]; } }