我正在使用MergedAdapter将两个自定义适配器(ArrayAdapter派生)和每个部分标题分组到一个ListView中。它工作正常,但现在我需要为没有项目的部分显示一个TextView,说“No Data”,例如ArrayAdapter为空。
最好的方法是什么?设置ListView绑定的代码如下:
ArrayList<ItemOne> firstItems = getFirstGroupItems();
ArrayList<ItemTwo> secondItems = getSecondGroupItems();
ItemOneAdapter firstAdapter = new ItemOneAdapter(this, this.firstItems);
ItemTwoAdapter secondAdapter = new ItemTwoAdapter(this, this.secondItems);
MergeAdapter adapter = new MergeAdapter();
adapter.addView(createGroupSeparator(R.string.first_section_header)); //Just creates a TextView
adapter.addAdapter(firstAdapter);
adapter.addView(createGroupSeparator(R.string.second_section_header)); //Just creates a TextView
adapter.addAdapter(secondAdapter);
listView.setAdapter(adapter);
答案 0 :(得分:0)
如果是空列表,您可以将第一个项目设为“无数据”,但这通常会使代码无法管理。我建议您在屏幕上添加一条不可见的TextView并附上消息;这仅在列表为空时显示。