public class MainActivity extends AppCompatActivity {
private TabLayout tab;
private ViewPager vp;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
initView();
tab.setupWithViewPager(vp);
vp.setAdapter(new MyAdapter(getSupportFragmentManager()));
}
private void initView() {
tab = (TabLayout) findViewById(R.id.tab);
vp = (ViewPager) findViewById(R.id.vp);
}
}
//适配器
public class MyAdapter extends FragmentPagerAdapter {
String[] strs={"美食","休闲娱乐","生活服务","酒店","全部"};
public MyAdapter(FragmentManager fm) {
super(fm);
}
@Override
public Fragment getItem(int position) {
return MyFragment.getFragment(null,strs[position]);
}
@Override
public int getCount() {
return strs.length;
}
@Override
public CharSequence getPageTitle(int position) {
return strs[position];
}
}
//fragment
public class MyFragment extends Fragment {
private TextView frag_tv;
@Nullable
@Override
public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
return LayoutInflater.from(getActivity()).inflate(R.layout.myfragment,null);
}
@Override
public void onActivityCreated(@Nullable Bundle savedInstanceState) {
super.onActivityCreated(savedInstanceState);
initView();
Bundle bundle = getArguments();
String title = bundle.getString("title");
frag_tv.setText(title);
}
private void initView() {
frag_tv=getView().findViewById(R.id.frag_tv);
}
public static Fragment getFragment(String url,String title){
MyFragment myFragment = new MyFragment();
Bundle bundle = new Bundle();
bundle.putString("title",title);
bundle.putString("url",url);
myFragment.setArguments(bundle);
return myFragment;
}
}