Android FragmentPagerAdapter已经被弃用,推荐使用FragmentStatePagerAdapter来代替。下面是一个使用FragmentStatePagerAdapter的示例代码:
public class MyPagerAdapter extends FragmentStatePagerAdapter {
private List fragmentList;
public MyPagerAdapter(FragmentManager fm, List fragmentList) {
super(fm);
this.fragmentList = fragmentList;
}
@Override
public Fragment getItem(int position) {
return fragmentList.get(position);
}
@Override
public int getCount() {
return fragmentList.size();
}
}
public class MainActivity extends AppCompatActivity {
private ViewPager viewPager;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
viewPager = findViewById(R.id.viewPager);
List fragmentList = new ArrayList<>();
fragmentList.add(new Fragment1());
fragmentList.add(new Fragment2());
fragmentList.add(new Fragment3());
MyPagerAdapter adapter = new MyPagerAdapter(getSupportFragmentManager(), fragmentList);
viewPager.setAdapter(adapter);
}
}
在上面的示例中,我们创建了一个自定义的FragmentStatePagerAdapter适配器类,并在MainActivity中使用它来设置ViewPager的适配器。注意在FragmentStatePagerAdapter中,getItem()方法返回的是每个位置对应的Fragment对象,getCount()方法返回Fragment的数量。
希望以上解决方法对您有帮助!
上一篇:Android FragmentManager:自定义动画显示错误的退出片段
下一篇:Android FragmentPagerAdapter,getItems,instantiateItem已被弃用。