Android 无法将标题视图添加到列表-已调用setAdapter

Android 无法将标题视图添加到列表-已调用setAdapter,android,android-listview,android-adapter,Android,Android Listview,Android Adapter,致命异常:主 java.lang.IllegalStateException:无法将标题视图添加到列表中--已调用setAdapter。 我撞车了,但它并不总是发生!实际上我的测试手机没有问题。下面是我的代码 建造师 public MyListView(Context context) { super(context); adapter = new MytListAdapter(context); setAdapter(adapter); } 在从服务

致命异常:主 java.lang.IllegalStateException:无法将标题视图添加到列表中--已调用setAdapter。

我撞车了,但它并不总是发生!实际上我的测试手机没有问题。下面是我的代码

建造师

public MyListView(Context context) {        
    super(context);

    adapter = new MytListAdapter(context);
    setAdapter(adapter);
}
在从服务器获取数据后,我调用了“addHeaderView”。所以我尝试在setAdapter之前调用addHeaderView,我使用视图属性的可见性。但即使我将视图设置为不存在,但它仍然有一个空间


有什么办法解决这个问题吗?

在调用
addHeaderView()
之前,不要调用
setAdapter()
。在您的情况下,这意味着在“从服务器获取数据之后”才调用
addHeaderView()
setAdapter()


或者,不要使用
addHeaderView()
,而是在检索服务器数据后,修改适配器,使其在第0个位置有一个额外的行,其中第0个位置是您的虚拟“头”。

在调用
addHeaderView()
之前,不要调用
setAdapter()
。在您的情况下,这意味着在“从服务器获取数据之后”才调用
addHeaderView()
setAdapter()


或者,不要使用
addHeaderView()
,而是在检索服务器数据后,修改适配器,使其在第0个位置有一个额外的行,其中第0个位置是您的虚拟“头”。

实际上,我通过在HeaderView中使用LinearLayout解决了这个问题

我将LinearLayout添加到HeaderView,如果我想使标题不可见,我将转到LinearLayout的setVisibility方法

这根本不构成非法国家的例外


谢谢。

实际上,我在HeaderView中使用LinearLayout解决了这个问题

我将LinearLayout添加到HeaderView,如果我想使标题不可见,我将转到LinearLayout的setVisibility方法

这根本不构成非法国家的例外


谢谢。

根据Android指南详细解释。当
addHeader/addFooter
KITKAT版本之前引入时,开发人员应仅在添加页眉/页脚后调用setAdapter。Kitkat发布后意味着Android
Versions>=Kitkat
开发者可以随时调用setAdapter


参考:

根据Android指南进行详细解释。当
addHeader/addFooter
KITKAT版本之前引入时,开发人员应仅在添加页眉/页脚后调用setAdapter。Kitkat发布后意味着Android
Versions>=Kitkat
开发者可以随时调用setAdapter


ref:

我改变了我的问题,所以我尝试了另一种方法,但它仍然有一个空间。android api文档中也提到了崩溃的原因。请查看答案以了解更多详细信息:我更改了我的问题,所以我尝试了另一种方法,但它仍然有空间。android api文档中也提到了崩溃的原因。请检查答案以了解更多细节:请在“希望”尝试我的答案这将对你有帮助在“希望”尝试我的答案这将对你有帮助你可以检查我的答案以了解更多细节在“希望”尝试我的答案这将对你有帮助在“希望”尝试我的答案这将对你有帮助你可以检查我的答案以了解更多细节