实现多级列表视图的最佳方法是什么?
我有一个分为 1 个类别和 2 个子类别的项目。所以看起来像这样
类别 1 > 子类别 a > 子类别 b > 项目 > 详细视图
听起来您正在寻找 ExpandableListView (此处的文档)。但是,它不允许您需要的嵌套级别。
不过老实说,我建议不要仅使用 ListView 将项目嵌套到 ListView 设置中。它使列表项的导航变得困难/混乱(更不用说编程方面,这会更糟)。我会考虑按照以下方式做一些事情:
使用和 ExpandableListView 来实现你需要的 Category->Sub-Category 布局。
从那里允许用户“单击”其中一个子类别以用片段替换 ListView(不要忘记放一个后退按钮)。
从片段允许用户查看更多详细信息。
这个例子与我上面概述的有点不同,但它很好,尽管如此。
这种方法将使导航更容易,并简化您的代码。
希望这可以帮助。
类别 1 > 子类别 a > 子类别 b > 项目 > 详细视图
你想要深层嵌套
有 4 个 ListActivity 第一个列表显示 Cat 1 在选择一只猫时打开另一个 ListActivity 与 Sub-cat a 在猫上选择打开 ListActivity 与 Sub-cat b 并打开 ListActivity 与项目并单击一个项目在对话框或 a 中显示详细信息活动。
这种方式更容易处理,但每次查看项目时,您都必须后退 3 次才能获得主列表。
在深度嵌套中,如果存在大量 cat 和 sub cat 数据,您将一次全部加载并填充列表,但在这种情况下,您将仅获取所需的内容。我不是说这是最好的解决方案。我很乐意知道的任何人提供更好的解决方案。
请检查此https://stackoverflow.com/a/16558922/1911784
它为我工作。
如果您需要更多子级别,可扩展列表视图只有两个级别,那么您必须自定义可扩展列表视图,我认为这是一件坏事