我想创建一个 Activity 来检索存储在数据库中的一组 Notes。现在,根据为每个笔记设置的日期,我想根据今天、明天和即将到来的笔记对 ListView 进行分区(每个笔记的 ListView 之间都有自己的 TextView)。
我应该创建 3 个单独的 ListViews 吗?它会起作用吗?或者有更好的方法吗?
我想创建一个 Activity 来检索存储在数据库中的一组 Notes。现在,根据为每个笔记设置的日期,我想根据今天、明天和即将到来的笔记对 ListView 进行分区(每个笔记的 ListView 之间都有自己的 TextView)。
我应该创建 3 个单独的 ListViews 吗?它会起作用吗?或者有更好的方法吗?
据我了解,您希望ListView
按某些类别(今天、明天等)分组显示项目。如果是这样,那么您可以使用可以按类别对数据进行分组的ExpandableListView 。
(如果您不需要“可扩展”行为,则可以禁用此功能)
此外,您可以使用Sticky List Headers而不是 ExpandableListView 将部分添加到列表视图。您可以通过从 StickyListHeadersAdapter 扩展适配器并覆盖 getHeaderId 和 getHeaderView 方法来自定义部分视图。
@Override public View getHeaderView(int position, View convertView, ViewGroup parent) {
HeaderViewHolder holder;
//...
@Override
public long getHeaderId(int position) {
// ...
}