我的应用面向 API 8 及更高版本,并使用 ActionbarSherlock。Activity
延伸SherlockFragmentActivity
。_ 我的 viewpager 片段适配器如下:
public class MyFragmentAdapter extends FragmentPagerAdapter {
public Fragment getItem(int position) {
...
}
@Override
public void destroyItem(ViewGroup container, int position, Object object) {
super.destroyItem(container, position, object);
FragmentManager manager = ((ListFragment) object).getSherlockActivity().getSupportFragmentManager();
FragmentTransaction trans = manager.beginTransaction();
trans.remove((Fragment) object);
trans.commit();
}
}
destroyItem
用于删除 a 的页面FragmentPagerAdapter
。这第一次工作正常,也许前两次页面被删除。但是在继续删除页面的某些时候,manager
返回 null 并且应用程序崩溃了manager.beginTransaction()
。
我似乎无法弄清楚这是为什么...