所以,我正在开发一个带有片段的应用程序,一切都很好,除了当我改变方向时,ListFragment
上的条目重复如此:
当我回到纵向模式时,这些项目仍然是重复的;直到我杀死进程并重新启动。
要填充列表我正在使用AsyncTaskLoader
,但它只运行一次,当应用程序第一次启动时;然后我的适配器充满了行的信息。
我没有在main.xml中使用<fragment>
标记,片段是通过“父”活动中的代码添加的,如下所示:
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
if (savedInstanceState == null) {
TodoListFragment fragment = new TodoListFragment();
FragmentTransaction trans = getFragmentManager().beginTransaction();
trans.replace(R.id.fragment_list_container, fragment,
LIST_FRAGMENT_TAG);
trans.commit();
}
}
替换是和添加,但改变尝试测试它是否有任何区别,它没有。
我也试过使用setRetainInstance(true)
方法,但没有用。
我很难过,任何帮助都会非常感激。
答案 0 :(得分:0)
你说AsyncTaskLoader只在应用程序启动时运行...在方向更改时应用程序正在重新启动,所以它可能正在运行第二次?