Tabbed Activity的使用(Fragment)

时间:2021-02-18 16:06:52

1,首先file -> new -> Activity -> Tabbed Activity

2,创建完成后,发现会自动的创建一大堆代码,大部分我们是不需要关心的,关于页面切换的代码位置:

  在中间偏下的位置有这样一个类:

    这个getItem就是我们进行页面切换操作的位置:

  public class SectionsPagerAdapter extends FragmentPagerAdapter {

         public SectionsPagerAdapter(FragmentManager fm) {
super(fm);
} @Override
//根据tab不同位置呈现不同的内容
public Fragment getItem(int position)

3,我们首先创建三个ImgFm,组成三个Fragment布局,下面我已其中一个为例:

很简单,我们需要在res —> drawable中添加几张图片,例如pic1

 public class Image1Fm extends Fragment{

     @Nullable
@Override
public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
ImageView iv = new ImageView(getActivity());
iv.setImageResource(R.drawable.pic1); return iv;
}
}

4,然后我们在第二步中的位置可以进行操作:

  public class SectionsPagerAdapter extends FragmentPagerAdapter {

         public SectionsPagerAdapter(FragmentManager fm) {
super(fm);
} @Override
//根据tab不同位置呈现不同的内容
public Fragment getItem(int position) {
switch (position){
case 0:
return new Image1Fm();
case 1:
return new Image2Fm();
case 2:
return new Image3Fm();
}
// getItem is called to instantiate the fragment for the given page.
// Return a PlaceholderFragment (defined as a static inner class below).
return null;
}

5,发布,运行(哈哈哈,黑一波我的姐)

Tabbed Activity的使用(Fragment)Tabbed Activity的使用(Fragment)Tabbed Activity的使用(Fragment)

最后,需要注意的一点是:我们添加的图片不可以过大,否则会提示下面的错误:

Android:java.lang.OutOfMemoryError: Failed to allocate a 23970828 byte allocation with 2097152 free bytes and 2MB until OOM