【问题标题】:Expandable ListView in AndroidAndroid中的可扩展ListView
【发布时间】:2015-03-13 09:16:29
【问题描述】:

我正在尝试创建可扩展列表视图。其中有菜单格式 - 子菜单和子菜单的子菜单,然后是项目。也有少数菜单没有子菜单。

所有这些都在导航抽屉(侧边菜单)上......

我指的是这样的事情:

问题是:

  1. 如何实现这种设计?可扩展列表视图是否有助于实现这一目标?

  2. 还有其他建议吗?

谢谢!

【问题讨论】:

  • androidhub4you.com/2014/07/… - 检查一下...希望它对您有所帮助
  • 我想在导航抽屉上实现这个?
  • 对于 getchildview() 内的可扩展适配器,您必须实现一个新的可扩展列表视图。

标签: android listview expandablelistview


【解决方案1】:

您需要做的是创建某种树形数据结构并在其中存储您的项目。

节点将是您的部分和子部分,而叶子是实际数据。这将允许您跟踪每个项目的可见性状态(基本上是在展开或折叠部分中)

然后创建一个具有 2 个视图类型的适配器:Category 和 Item。 它的getItemViewType 方法应该为每个leaf 和Category 为每个node 返回Item 类型。 它的 getCount 应该返回所有部分 + 小节 + 项目的总数。 它的getView 应该根据它的类型返回一个实际的视图,但重要的是检查它是否包含在扩展的(!并且也是可见的 - 你需要递归地检查它)部分并相应地设置它的 @ 987654330@ 到VISIBLE 或GONE。 它的onItemClicked 应该在部分的展开和折叠之间切换其状态。 Sections 对象可能应该有一个方法可以告诉您它是否展开以及它是否可见(如果父级展开,或者顶级,..)

对不起,这里没有代码,这应该可以帮助您了解一下,我正着急写一些例子(它需要相当多的代码)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-02-23
    • 1970-01-01
    • 2019-05-21
    • 2014-08-14
    相关资源
    最近更新 更多