有人对此有任何建议吗?目前,一个新行被添加到数据库中,我调用requery()。当他们第一次出现时,我想要任何新的动画。许多行添加将发生在列表的中间,而不是在顶部或底部。我希望这些动画以某种方式动画,以便用户可以立即看到它们。
我想在我的适配器中可能有一个hashmap(或一些数据结构),它包含特定行的id和一个布尔表示是否已被查看。在bindView中,检查该行的id的布尔值,如果为true,则动画某种闪烁,然后更新数据结构。这听起来有道理吗?
此外,当重新获取Cursor时,我想将列表滚动到新行的位置。不幸的是,在我找到它之前,我认为我不知道它的位置而不会强行通过列表。有什么建议吗?
答案 0 :(得分:0)
听起来你已经知道了问题的答案。是的,将项目ID映射到“已查看”的HashMap听起来像是解决此问题的好方法。如果某个项是新的,则可以在bindView中呈现该项时将动画应用于项视图。您还可以使用ListView类中的smoothScrollToPosition方法滚动到新的第一行。
要填充您需要遍历所有项目的哈希图,您还可以记录当时的新项目。