【问题标题】:addHeaderView on ListFragment = NullPointerExceptionListFragment 上的 addHeaderView = NullPointerException
【发布时间】:2012-02-06 17:46:54
【问题描述】:

当我尝试在我的 ListFragment 的列表中添加标题时遇到问题。我听说我必须在 setListAdapter 之前添加标题视图(我关注了这个主题 Best place to addHeaderView in ListFragment ),但是它仍然不起作用。

这是我的代码:

@Override
public void onActivityCreated (Bundle savedInstanceState)
{
    Log.i(General.TAG, "beginning of onActivityCreated");
    super.onActivityCreated(savedInstanceState);
    if (mheaderView != null)  this.getListView().addHeaderView(getView().findViewById(R.layout.header)); // <= mheaderView is not null
    ListView lv = getListView(); // <= lv is not null

    lv.setAdapter(adapter);
    Log.i(General.TAG, "end of onActivityCreated");
}

"lv.setAdapter(adapter)" 线上生成的堆栈跟踪是这个:

   02-06 16:16:37.226: E/AndroidRuntime(25838): **java.lang.NullPointerException**
   02-06 16:16:37.226: E/AndroidRuntime(25838):     at android.widget.ListView.clearRecycledState(ListView.java:497)
   02-06 16:16:37.226: E/AndroidRuntime(25838):     at android.widget.ListView.resetList(ListView.java:483)
   02-06 16:16:37.226: E/AndroidRuntime(25838):     at android.widget.ListView.setAdapter(ListView.java:426)
   02-06 16:16:37.226: E/AndroidRuntime(25838):     at fr.pack.DetailFragment.onActivityCreated(DetailFragment.java:75)

但是适配器不为空,mHeaderView 也不为空。你对我可能犯的错误有任何线索吗?提前致谢!

【问题讨论】:

标签: android view android-fragments


【解决方案1】:

我相信您的问题在于 addHeaderView,您可能缺少在将视图放在方法上之前对其进行膨胀。 我不想要积分,我只遇到了同样的问题,并发现了您的问题以及似乎也可以解决您的问题的类似问题:

Android adding footer to ListView addFooterView()?

希望对你有帮助

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多