拖放动画阴影回到原始位置,如果没有下降到目标



我已经使用ondraglistener实现了拖放功能。它工作得很好,但我的问题是,如果视图没有落在目标上,所产生的阴影就不会回到原始图像。如何设置阴影从位置到原始位置的动画。可以帮助

我们必须编写自己的逻辑来将其向后移动,这就是我们所做的。

在根视图中添加一个OnDragListener,在拖动视图的onDrag(视图视图,DragEvent事件)中,等待ACTION_DRAG_ENDED。

创建阴影的图像副本。

Bitmap bitmap = Bitmap.createBitmap(view.getWidth(), view.getHeight(), Config.ARGB_8888);
        Canvas canvas = new Canvas(bitmap);
shadowBuilder.onDrawShadow(canvas);

使用此位图创建为ImageView,并添加到视图层次结构的根视图中。

然后创建Animator,将其移回原始位置并移除ImageView。

ObjectAnimator defaultChangeIn = ObjectAnimator.ofPropertyValuesHolder((Object)mImageView,
                pvhLeft, pvhTop, pvhRight, pvhBottom);

相关内容