我的问题描述
在此屏幕截图中,有两个ListView
s。
我想要实现的是当我触摸紫色时ListView
,触摸的单元格会向上移动并停在蓝色底部的位置ListView
。
例如,如果我触摸“决定心脏移植”,那么他们将是一个动画,显示该单元格向上移动,然后停在“肝脏移植”的位置。
我试过的
我试过紫色的ListView
@Override
public void onListItemClick(ListView l, View v, int position, long id) {
// Setup the animation view
Log.d("onListItemClick", "Position: " + viewForAnim.getX() + ", " + viewForAnim.getY());
// Move up the selected view
Animation animation = null;
animation = new TranslateAnimation(0, 0, 0, -v.getY()-l.getY());
animation.setDuration(700);
v.startAnimation(animation);
}
但这似乎会在列表视图的范围内移动选定的单元格,它不能移出它。
考虑到动画紫色列表视图的单元格可能被蓝色列表视图覆盖,我什至尝试通过使用更改列表视图的 z 顺序
l.bringToFront();
然而,这也没有奏效。
我还尝试了这个 SO Post 中显示的方法
它可能适用于动画视图,但这不适用于我的情况。
然后我尝试设置android:clipChildren
and 不适用于需要将单元格移出列表视图的动画。
那么你们能指出我如何实现这种动画效果的正确方法吗?