Java 如何删除标题视图?或者修复此异常:“quot;无法将标题视图添加到列表-setAdapter已被调用";

Java 如何删除标题视图?或者修复此异常:“quot;无法将标题视图添加到列表-setAdapter已被调用";,java,android,header,adapter,Java,Android,Header,Adapter,我正在制作一个搜索应用程序,在其中输入一个术语,就会出现一个结果列表(ListView),并带有一个标题来标记该列表。您可以进行另一次搜索并获得不同的结果集。或者,您可以选择其中一个结果,它将带您进入另一个活动,并显示该选择的详细信息列表视图。这一切都很好 但是,当您从“详细信息”活动返回到“搜索”活动并键入另一个搜索词时,我发现以下错误 Cannot add header view to list -- setAdapter has already been called. 我的两个活动课都

我正在制作一个搜索应用程序,在其中输入一个术语,就会出现一个结果列表(ListView),并带有一个标题来标记该列表。您可以进行另一次搜索并获得不同的结果集。或者,您可以选择其中一个结果,它将带您进入另一个活动,并显示该选择的详细信息列表视图。这一切都很好

但是,当您从“详细信息”活动返回到“搜索”活动并键入另一个搜索词时,我发现以下错误

Cannot add header view to list -- setAdapter has already been called.
我的两个活动课都有一行

adapter.setAdapter(results);

据我理解,这是不允许的。我解决这个问题的方法是删除/清除“详细信息”活动的onDestroy()中有问题的数据(这是view?list?adapter吗?)。但是我不知道该怎么做,或者这是否是正确的解决方案。

正如例外情况明确指出的那样,您已经为
列表视图设置了适配器,现在正在尝试向
列表视图添加标题视图


据我所知,您只需添加一次标题视图,但只需更改标题视图为每个搜索结果显示的文本/数据(通过更改适配器中的数据)。您可以相应地重新构造代码。

结果在哪里生成并传递给适配器?onCreate?我认为当您转到“详细信息”活动时,搜索活动不会被破坏,它会暂停,当您返回时,它会恢复。因此,尝试将适配器重置逻辑放在onResume中。用新结果重置适配器。@Maxim它发生在我的“drawTable”函数中。在按下“搜索”按钮之前,我不会显示表格或标题的任何部分。这可能很糟糕,不是吗。。。将重置放在恢复中的好处。但我该如何重置它呢?不管怎样,每次搜索都会给出自己的结果,适配器将在onClickListener中重置,而不是在简历中重置。