我看到了您的分支,并注意到您正在使用
ViewPager并尝试使用
FragmentTransaction来更新内的片段
ViewPager。这并不是因为碎片将已经被中时创建工作,
ViewPagerAdapter创建并不能连接到
ViewPager通过
FragmentTransaction。
这是我解决的方法。由于我使用的是ViewPager,
FragmentTransaction因此无法使用以下方法:
错误的方法:
FragmentManager fm = getSupportFragmentManager();android.support.v4.app.FragmentTransaction ft = fm.beginTransaction();CommentsFragment commentsFragment = CommentsFragment.newInstance(mTaskId, mTaskName);ft.replace(R.id.container, commentsFragment);ft.addToBackStack(null);ft.commit();
使用ViewPager,我必须更新填充它的适配器,然后将其设置为正确的片段。这就是我所做的:
正确的方法:
在TasksFragment的onListItemClick()中,调用此接口方法onFragmentInteraction。然后在主要活动AddTask中,如下实现:
@Overridepublic void onFragmentInteraction(String taskId, String taskName, String assigneeRef) { CommentsFragment commentsFragment = CommentsFragment.newInstance(taskId, taskName); mSectionsPagerAdapter.fragmentList.remove(2); mSectionsPagerAdapter.fragmentList.add(commentsFragment); mSectionsPagerAdapter.notifyDataSetChanged(); mViewPager.setCurrentItem(2);}希望这对您和其他在更新ViewPager中的片段时遇到问题的人有所帮助。



