我在我的应用程序中使用操作栏和 viewpager 实现选项卡。我想访问主机活动中某个选项卡的片段。这是我的 pagerAdapter 代码:
public class MyPagerAdapter extends FragmentPagerAdapter {
Fragment screens[];
public MyPagerAdapter(FragmentManager fm, MainActivity2 context) {
super(fm);
screens = new Fragment[4];
screens[3] = Fragment.instantiate(context,CoachFragment.class.getName() );
screens[2] = Fragment.instantiate(context,LogingFragment.class.getName() );
screens[1] = Fragment.instantiate(context,ToolbarFragment.class.getName() );
screens[0] = Fragment.instantiate(context,HistoryFragment.class.getName() );
}
@Override
public Fragment getItem(int index) {
if(index <= screens.length)
{
return screens[index];
}
return null;
}
@Override
public int getCount() {
return screens.length;
}
}
在所有设置后的代码中,我有以下行:
CoachFragment fragment = (CoachFragment) mPagerAdapter.getItem(3);
fragment.setProgress(dor);
我的片段不为空,但在 CoachFragment 的 setProgress() 中,我在其中一个对象中得到了空指针。但我在 CoachFragmwnt 的 oncreatview() 中实例化了该对象。当片段对象不为空但未调用 onCreateView() 时,这怎么可能?