【问题标题】:SQLite grouped items and expandable list views for androidandroid 的 SQLite 分组项目和可扩展列表视图
【发布时间】:2018-07-14 15:47:38
【问题描述】:
所以我被困在一些可能非常基本的东西上。我将数据存储在 SQLite 数据库表中,并希望将其显示在可扩展的列表视图中。数据基本上形成标题和副标题。一个标题有很多子标题。
检索数据非常简单。我坚持的部分是获取这些数据并将其提供给可扩展的列表视图。
我希望可展开的列表视图将标题显示为可以展开的项目,而子标题则显示为子项目。我该怎么做?
提前致谢。
【问题讨论】:
标签:
java
android
sqlite
expandablelistview
【解决方案1】:
您必须为 ExpandableListView 提供适配器。有一个基类adapter,您可以根据需要对其进行扩展。
【解决方案2】:
用于创建数据列表。假设 Column1 是 Heading,Column2 是 SubHeading,在活动/片段中试试这个:
ArrayList<String> headings = new ArrayList<>();
HashMap<String, ArrayList<String>> subheadings = new HashMap<>();
String heading, subheading;
do{
heading = cursor.getString(1);
subheading = cursor.getString(2);
ArrayList<String> tmpChild;
if(headings.contains(heading)){
tmpChild = subheadings.get(heading);
}else{
headings.add(heading);
tmpChild = new ArrayList<>();
}
tmpChild.add(subheading);
subheadings.put(heading, tmpChild);
}while (cursor.moveToNext());
对于适配器,请在此处尝试我的答案:Tree with checkBox
希望有帮助!