我知道有人问过几次。但是无论如何,每个答案都太抽象了,根本不适合我的问题。
好的,正如问题所述,我需要一个列表,其中每个项目都有一个子项目。我已经有一个项目列表,但是没有子项目。如下所示,我已经有两个ArrayList,第一个包含listItems,第二个包含subItems。因此,用这两个解决这个问题将是最佳的。
我所拥有的:
listView = view.findViewById(R.id.explore_list);
listView.setOnItemClickListener(this);
try {
ArrayList<String> arrayList = new ArrayList<>();
ArrayList<String> secondArrayList = new ArrayList<>();
for (Integer i = 0; i < DataManager.data.getJSONObject(DataManager.dataTableDefinition[0]).length(); i++) {
arrayList.add(DataManager.data.getJSONObject(DataManager.dataTableDefinition[0]).getJSONObject(i.toString()).getString("Name"));
secondArrayList.add(DataManager.data.getJSONObject(DataManager.dataTableDefinition[0]).getJSONObject(i.toString()).getString("Beschreibung"));
}
ArrayAdapter<String> arrayAdapter = new ArrayAdapter<>(Objects.requireNonNull(getActivity()), android.R.layout.simple_list_item_1, arrayList);
listView.setAdapter(arrayAdapter);
} catch (Exception ignored){}
注意:
DataManager.data.getJSONObject(DataManager.dataTableDefinition[0]).getJSONObject(i.toString()).getString("Name")
和DataManager.data.getJSONObject(DataManager.dataTableDefinition[0]).getJSONObject(i.toString()).getString("Beschreibung")
输出一个字符串,与此处无关。因此可以忽略它们。
答案 0 :(得分:1)
您要创建类似的东西吗?
非常简单,这是我为您准备的演示项目: https://github.com/hiepxuan2008/basic-recyclerview-android 。希望它能对您的问题有所帮助,谢谢!
答案 1 :(得分:0)
您可以创建一个具有主要项目及其子项目属性的类,然后使用您的类而不是字符串创建ArrayList。