我正在创建一个搜索应用程序,您可以在其中输入一个术语,并显示结果列表(ListView),并带有标题列表的标题。您可以进行另一次搜索并获得一组不同的结果。或者您可以选择其中一个结果,它会将您带到另一个Activity,其中包含该选择的详细信息的ListView。一切正常。
但是当您从详细信息Activity返回到搜索活动并输入另一个搜索词时,我收到以下错误。
Cannot add header view to list -- setAdapter has already been called.
我的两个Activity类都有一行像
adapter.setAdapter(results);
根据我的理解,这是不允许的。我解决此问题的方法是删除/清除详细活动的onDestroy()中的违规数据(将是视图?列表?适配器?)。但我不知道如何去做,或者这甚至是正确的解决方案。
答案 0 :(得分:2)
正如异常明确指出的那样,您已经为ListView
设置了适配器,现在正尝试向ListView
添加标题视图。
据我所知,您只需要添加一次标题视图,但只更改每个搜索结果的标题视图显示的文本/数据(通过更改适配器中的数据)。您可以相应地重新设置代码。