首页 文章

使用CursorAdapter为ListView中的新行设置动画

提问于
浏览
3

有没有人对此有任何建议?目前,一个新行被添加到数据库中,我调用requery() . 当他们第一次出现时,我想要任何新的动画 . 许多行添加将发生在列表的中间,而不是在顶部或底部 . 我希望这些动画以某种方式动画,以便用户可以立即看到它们 .

我想在我的适配器中可能有一个hashmap(或一些数据结构),它包含特定行的id和一个布尔表示它是否已被查看 . 在bindView中,检查该行的id的布尔值,如果为true,则动画某种闪烁,然后更新数据结构 . 这听起来有道理吗?

此外,当Cursor被重新查询时,我想将列表滚动到新行的位置 . 不幸的是,在我找到它之前,我认为我不知道它的位置而不会强行通过列表 . 有什么建议?

1 回答

  • 0

    听起来你已经知道了问题的答案 . 是的,将项目ID映射到“已经查看过”的HashMap听起来像是解决这个问题的好方法 . 如果某个项是新的,则可以在bindView中呈现该项时将动画应用于项视图 . 您还可以使用ListView类中的smoothScrollToPosition方法滚动到第一行new .

    要填充散列图,您需要遍历所有项目,您还可以记录当时的新项目 .

相关问题