像动画一样捕捉笔记

时间:2012-11-08 08:34:00

标签: android list animation

我需要像“Catch notes”应用程序一样创建动画。我所指的动画是当你按下一个列表中的一个对象时,它上面的所有对象都会上升并且它下面的所有对象都会关闭,所有这些都是动画。

我当时认为使用常规列表视图是不可能的。也许这样做的方法就是以某种方式逐个手动放置对象?

有更好的想法吗? 谢谢!

1 个答案:

答案 0 :(得分:2)

获取所有可见项(listView.getFirstVisiblePosition()到getLastVisiblePosition())并使用listView.getChildAt(index)获取视图。 然后,您可以使用ObjectAnimator或类似工具为视图上方和下方的所有视图设置动画。

示例:

for (int i = listView.getFirstVisiblePosition(); i < myListAdapter.getCount() && i <=    listView.getLastVisiblePosition(); i++) {
  View v = listView.getChildAt(i - listView.getFirstVisiblePosition());
  ListItem listItem = myListAdapter.getListItem(i);
  if (v != null) {
    ObjectAnimator.ofFloat(v, "translationY", 0, -screenHeight).start();
  }
}