use*_*599 20 android listview adapter
我有一个edittext字段和一个"搜索"按钮.当我点击搜索时,我必须显示一个列表视图,其中包含与edittext中输入的值相对应的数据.我使用addHeader()在列表中添加了一个标题.当我第一次搜索时,我能够成功地在List中显示数据.但是当我再次搜索时,我收到以下错误.
FATAL EXCEPTION: main
java.lang.IllegalStateException: Cannot add header view to list -- setAdapter has already been called.
at android.widget.ListView.addHeaderView(ListView.java:261)
at android.widget.ListView.addHeaderView(ListView.java:284)
Run Code Online (Sandbox Code Playgroud)
在设置适配器之前,我已将标题分配给我的列表.
以下是我的代码:
myList = (ListView) findViewById(R.id.searchResultsList);
View header = View.inflate(this, R.layout.search_results_header, null);
myList.addHeaderView(header, null, false);
dataAdapter = new MyCustomAdapter(this, R.layout.results_list_item, searchedResults);
myList.setAdapter(dataAdapter);
Run Code Online (Sandbox Code Playgroud)
我在哪里做错了?
小智 12
无法将标题视图添加到列表中 - 已调用setAdapter.你可以看到,myList.addHeaderView(标题)必须在myList.setAdapter(adapter)之前执行;
尝试这个..
dataAdapter = new MyCustomAdapter(this, R.layout.results_list_item, searchedResults);
myList.addHeaderView(header);
myList.setAdapter(dataAdapter);
dataAdapter.notifyDataSetChanged();
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
17707 次 |
| 最近记录: |