我的应用程序中有一个ListView。它包含属于对象的信息。 Object中最重要的值是日期值。我需要像日期一样对ListView项目进行排序......
12-12-2018
13-12-2018
14-12-2018
15-12-2018
我无法假设日期将来自Web服务,他们可以在即将发布的日期之前将其恢复。
我首先对对象进行了排序并将它们传递给适配器,但觉得这可能很麻烦,并认为ListView可能会为我做这件事。有没有更好的方法来做到这一点,还是这是最好的方式?适配器是否总是在对象列表的每次迭代中呈现项目?
由于
答案 0 :(得分:1)
在此article中:
ListView是一个适配器视图,它不知道它包含的视图的详细信息,例如类型和内容。
在Android设计模式中,ListView
使用Adapter Pattern来显示其内容。有一个案例谈论this。
此外,还有另一种声音,ListView
是MVC。
无论是适配器模式还是MVC,ListView
都不能自己保存数据,它需要一个模型来管理数据,并按Adapter
显示。
有更好的方法吗?或者这是最好的方法吗?
首先对数据进行排序并将其传递给Adapter是最好的方法。 ListView
无法执行此操作,它只负责显示View
。通过这种方式,您的ListView
将变得更容易维护和扩展,这意味着如果您想要对数据进行更改,则无需更改ListView
上的任何内容,只需要专注于保存数据的Model
。