依赖:
compile 'com.android.support:design:26.0.0-alpha1'
布局:
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical">
<android.support.design.widget.TabLayout
android:id="@+id/tab"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="#e5e2e2"
app:tabIndicatorColor="#20b3a2"
app:tabIndicatorHeight="4dp"
app:tabSelectedTextColor="#ff0000"
app:tabGravity="fill"
app:tabTextColor="#aaa" />
<android.support.v4.view.ViewPager
android:id="@+id/pager"
android:layout_width="match_parent"
android:layout_height="match_parent" />
</LinearLayout>
代码设置:
//查找控件
tab = (TabLayout)view.findViewById(R.id.tab);
ttv =(TilelesTowView)view.findViewById(R.id.ttv);
fd =(ImageView)view.findViewById(R.id.fd);
pa = (ViewPager)view.findViewById(R.id.pager);
lists.add("ANDROID");
lists.add("IOS");
lists.add("福利");
list2.add(new AnFragment());
list2.add(new IOSFragment());
list2.add(new FuFragment());
//详情页
fd.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
}
});
//tablayout和viewpager关联
tab.setupWithViewPager(pa);
//设置viewpager适配器
pa.setAdapter(new FragmentPagerAdapter(getActivity().getSupportFragmentManager()) {
//重写这个方法,将设置每个Tab的标题
@Override
public CharSequence getPageTitle(int position) {
return lists.get(position);
}
@Override
public int getCount() {
return list2.size();
}
@Override
public Fragment getItem(int position) {
Bundle bundle = new Bundle();
if (lists.get(position).equals("ANDROID")){
bundle.putString("name","ANDROID");
}else if (lists.get(position).equals("IOS")){
bundle.putString("name","IOS");
}else if (lists.get(position).equals("福利")){
bundle.putString("name","福利");
}
list2.get(position).setArguments(bundle);
return list2.get(position);
}
});
fragment中写:
Bundle bundle = getArguments();
//接收传递过来的值
String string = bundle.getString("name", "福利");