java.lang.IllegalStateException:片段已在View Pager中处于活动状态

时间:2014-11-21 05:22:14

标签: java android android-fragments android-viewpager

我正在编写一个应用程序,我使用PageViewer使用可用的解决方案显示无限客户端here

在我的情况下,我必须使用以下代码更新来自[onPageState] [2]的其他事件的已添加的孩子:

PageFragment  scr = (PageFragment) mPagerAdapter.getItem(mPager.getCurrentItem());

但它返回IllegalStateException,表示Fragment已经激活。

我使用this进行了检查,但我没有得到它。

编辑:Fragment child add code: 它一开始就创建了第一个片段列表:

for (int i = 0; i < 5 ; i++) {
            PageFragment fragment = new PageFragment();
            Bundle bundle = new Bundle();
            bundle.putInt("page", i);
            fragment.setArguments(bundle);
            pageList.add(fragment);
        }

EDIT2:这里的行fragment.setArguments(..)导致错误,为什么?

这是适配器实现:

private class PagerAdapter extends FragmentStatePagerAdapter {

        public PagerAdapter(FragmentManager fm) {
            super(fm);
        }

        @Override
        public Fragment getItem(int position) {
            int _pos = position % 5;

            PageFragment fragment = pageList.get(_pos);
            Bundle bundle = new Bundle();
            bundle.putInt("page", position);
            fragment.setArguments(bundle);

            return fragment;
        }

        @Override
        public int getCount() {
            return MAX_CARD_PAGES;
        }
    }

任何建议。

0 个答案:

没有答案