0

「キャッチノート」アプリのようなアニメーションを作成する必要があります。私が言及しているアニメーションは、リスト内のオブジェクトを押すと、その上にあるすべてのオブジェクトが上昇し、その下にあるすべてのオブジェクトが下降するアニメーションです。

通常のリストビューでは無理だと思っていました。おそらく、それを行う方法は、何らかの方法でオブジェクトを1つずつ手動で配置することですか?

より良いアイデアはありますか?ありがとう!

4

1 に答える 1

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();
  }
}
于 2012-11-08T08:39:50.440 に答える