Android ListFragment";“尚未创建内容视图”;轮换

Android ListFragment";“尚未创建内容视图”;轮换,android,android-listfragment,Android,Android Listfragment,我有一个扩展的ListFragment,带有这个onViewCreated() mListener.onFragmentAction调用主活动以附加一些侦听器并将适配器发送到片段的listView(logFrag是活动对MyListFragment的引用) 应用程序加载良好,但在配置更改(设备旋转)后,我得到以下堆栈跟踪: 11-22 14:58:24.336: E/AndroidRuntime(22261): Caused by: java.lang.IllegalStateException

我有一个扩展的ListFragment,带有这个onViewCreated()

mListener.onFragmentAction调用主活动以附加一些侦听器并将适配器发送到片段的listView(
logFrag
是活动对
MyListFragment
的引用)

应用程序加载良好,但在配置更改(设备旋转)后,我得到以下堆栈跟踪:

11-22 14:58:24.336: E/AndroidRuntime(22261): Caused by: java.lang.IllegalStateException: Content view not yet created
11-22 14:58:24.336: E/AndroidRuntime(22261):    at android.support.v4.app.ListFragment.ensureList(ListFragment.java:328)
11-22 14:58:24.336: E/AndroidRuntime(22261):    at android.support.v4.app.ListFragment.getListView(ListFragment.java:222)
11-22 14:58:24.336: E/AndroidRuntime(22261):    at com.berrmal.timetracker.MainActivity.populateLogFrag(MainActivity.java:225)
11-22 14:58:24.336: E/AndroidRuntime(22261):    at com.berrmal.timetracker.MainActivity.onFragmentAction(MainActivity.java:282)
11-22 14:58:24.336: E/AndroidRuntime(22261):    at com.berrmal.timetracker.MyListFragment.onViewCreated(MyListFragment.java:23)

我不明白为什么还没有创建ListView,因为我是在片段的onCreateView方法已经返回之后以及onViewCreated()期间调用它的。我找到了一两个具有相关标题的线程,但解决方案似乎不适用于此处。

将代码从创建视图时的
移动到创建活动时的
。一般来说,使用UI小部件的所有内容都应该在ActivityCreated中,谢谢。我仔细阅读了文档,但显然没有意识到这一点。我在ActivityCreated:S中调用UI相关内容时出错
public void populateLogFrag() {
//line 225  logFrag.getListView().setOnItemLongClickListener(myEventListener);
            logFrag.getListView().setOnItemClickListener(myEventListener);
            refreshLogAdapter(provideLogAdapter());
}
11-22 14:58:24.336: E/AndroidRuntime(22261): Caused by: java.lang.IllegalStateException: Content view not yet created
11-22 14:58:24.336: E/AndroidRuntime(22261):    at android.support.v4.app.ListFragment.ensureList(ListFragment.java:328)
11-22 14:58:24.336: E/AndroidRuntime(22261):    at android.support.v4.app.ListFragment.getListView(ListFragment.java:222)
11-22 14:58:24.336: E/AndroidRuntime(22261):    at com.berrmal.timetracker.MainActivity.populateLogFrag(MainActivity.java:225)
11-22 14:58:24.336: E/AndroidRuntime(22261):    at com.berrmal.timetracker.MainActivity.onFragmentAction(MainActivity.java:282)
11-22 14:58:24.336: E/AndroidRuntime(22261):    at com.berrmal.timetracker.MyListFragment.onViewCreated(MyListFragment.java:23)