如何组织3个列表视图适配器之间的通信

时间:2016-06-28 14:28:22

标签: java android listview arraylist

我有3个列表视图和3个适配器。然后是类Menu,它包含Products的ArrayList,其中Product也是一个类。

第一个适配器包含ArrayList并显示ListView1中的所有菜单。

第二个必须包含并显示菜单中的所有产品,在第一个适配器中选择。

3rd必须包含所有可用的产品,这些产品不在第二个ListView中。

问题是,如何以这种方式组织架构,从第一个ListView中选择一个项目会影响第二和第三个适配器。我的意思是我是否需要创建一个新类,它将保留所有更改,或者最好使ArrayLists静态并从OnClickListeners调用它们的更新?

1 个答案:

答案 0 :(得分:0)

我认为在第一个视图上做出选择之后,第二个和第三个视图甚至都不会显示,不是吗?

无论如何,如果2和3是来自相同产品列表的排他性绘图,听起来您应该能够使用相同的基础数据源构建它们。你是如何填充这些适配器的?如果您有足够多的产品列表,内容提供商听起来会很好地适应这种情况。

就行为而言,当在第一个视图上进行选择时,应该会在新更改的参数上刷新第二个和第三个视图。因此,如果在第一个视图中用户选择了许多包含产品的菜单,则第二个视图应该使用所选菜单作为某个类的查询,然后显示哪些产品。第三个视图就是剩下的内容,或者使用所选择的菜单作为保留键的排序,即仅获取不在所述菜单中的产品,这对查询来说只是一个小的改动。