5

我正在使用ViewPager一个自定义PagerFragmentAdapter,它使用一个内部列表来提供片段。我想在设置更改时动态添加和删除片段。

protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.fragment_pager);
    mAdapter = new ServicePagerAdapter(getSupportFragmentManager());
    mPager = (ViewPager) findViewById(R.id.pager);
    mPager.setAdapter(mAdapter);
}

我试图再次调用,setAdapter但我获得了一个IllegalStateException (Can not perform this action after onSaveInstanceState).

怎样才能达到我的目的?

4

1 回答 1

2

您无需ServicePagerAdapter每次都重新设置。onCreate()在您的方法Activity(或您的onActivityCreated()方法)中创建和设置一次就足够了Fragment,然后您可以简单地调用add()适配器的方法向其添加新元素。但不要忘记notifyDataSetChanged()在每次添加适配器后调用。

于 2012-10-22T09:02:47.337 回答