带有一个子项的 ListView

我知道这已经被问过几次了。但不知何故,每个答案都太抽象了,不适合我的问题。


好的,正如问题所说,我需要一个列表,其中每个项目都有一个子项目。我已经有一个项目列表,但没有子项目。正如您在下面看到的,我已经有两个 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") 输出一个字符串,与这里无关。因此它们可以被忽略。


有只小跳蛙
浏览 137回答 2
2回答

暮色呼如

您可以使用主项目及其子项目的属性创建一个类,然后使用您的类而不是字符串创建 ArrayList。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java