ViewDragHelper动画侦听器

时间:2016-05-06 14:27:36

标签: android android-animation viewdraghelper

我正在使用ViewDragHelper将视图滑动到新位置,我正在尝试使用viewDragHelper.smoothSlideViewTo(dragView, x, y)。问题是:如何在幻灯片动画完成后收到通知?我正在寻找一种方法来收听幻灯片动画事件(特别是onSlideAnimationComplete())。有什么想法吗?

private boolean smoothSlideTo(float slideOffset) {
    final int topBound = getPaddingTop();
    int x = (int) (slideOffset * (getWidth() - transformer.getMinWidthPlusMarginRight()));
    int y = (int) (topBound + slideOffset * getVerticalDragRange());
    if (viewDragHelper.smoothSlideViewTo(dragView, x, y)) {
        ViewCompat.postInvalidateOnAnimation(this);
        return true;
    }
    return false;
}

1 个答案:

答案 0 :(得分:0)

在做动画时,似乎viewdraghelper没有监听器或回调,但是您可以通过实现onViewDragStateChanged来解决它并通过其状态判断,如下所示:

Rcpp

state == 1表示拖动,state == 2表示滚动,state == 0表示空闲。