首页 > 解决方案 > 带有一个子项的 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") 输出一个字符串和这里不相关。因此可以忽略它们。

标签: javaandroidlistviewsubitem

解决方案


你想创造这样的东西吗?

很简单,这是我给你的演示项目: https ://github.com/hiepxuan2008/basic-recyclerview-android 。希望对您的问题有所帮助,谢谢!

在此处输入图像描述


推荐阅读