如何在ListView中添加HeaderView

How to addHeaderView in ListView

我正在使用带 cursorAdapter 的 listView。我需要的是在这个 listView 的顶部添加一些布局。

mListView.addHeaderView(mLayout);

在 android 4.4 及更高版本上运行良好,但例如在 4.0 上 - 我遇到错误:

java.lang.ClassCastException: android.view.ViewGroup$LayoutParams cannot be cast to android.widget.AbsListView$LayoutParams

有没有其他方法可以做到这一点,或者我该如何解决这个问题?

谢谢!

首先为您的布局充气:

View mHeader = LayoutInflater.from(context).inflate(R.layout.your_layout, null);

并将其添加到您的列表视图中:

yourListView.addHeaderView(mHeader);

编辑:我们需要更多信息来完全解决您的问题,我们需要查看您的代码,但如果我猜您可以通过以下方式解决它:

AbsListView absListView = (AbsListView) viewGroup;