我在viewpager中有4个片段,但如果我进入具有viewpager only 2 fragments call oncreateview的活动
因此剩余片段无法调用其组件,并出现空指针错误
我有pageradapter,我没有单独调用它们
我该怎么解决这个问题?
---寻呼机适配器---
public class SearchPageAdapter extends FragmentPagerAdapter {
private ArrayList<Fragment> arrayList = new ArrayList<>();
FragmentManager fragmentManager;
public SearchPageAdapter(@NonNull FragmentManager fm) {
super(fm);
fragmentManager = fm;
arrayList.add(new SearchPageBookFragment());
arrayList.add(new SearchPageFeedFragment());
arrayList.add(new SearchPageChallengeFragment());
arrayList.add(new SearchPageUserFragment());
}
@NonNull
@Override
public Fragment getItem(int position) {
return arrayList.get(position);
}
@Override
public int getCount() {
return arrayList.size();
}
}
---连接视图页和片段---
searchPageBookFragment = ((SearchPageBookFragment) ((SearchPageAdapter) binding.viewpager.getAdapter()).getItem(0));
searchPageFeedFragment = ((SearchPageFeedFragment) ((SearchPageAdapter) binding.viewpager.getAdapter()).getItem(1));
searchPageChallengeFragment = ((SearchPageChallengeFragment) ((SearchPageAdapter) binding.viewpager.getAdapter()).getItem(2));
searchPageUserFragment = ((SearchPageUserFragment) ((SearchPageAdapter) binding.viewpager.getAdapter()).getItem(3));
1条答案
按热度按时间ua4mk5z41#
将视图页离屏页限制更改为以下值
它将初始化所有片段。