Android ViewDragHelper动画侦听器

Android ViewDragHelper动画侦听器,android,android-animation,viewdraghelper,Android,Android Animation,Viewdraghelper,我正在使用ViewDragHelper将视图滑动到新位置,并尝试使用ViewDragHelper.smoothSlideViewWTO(dragView,x,y)。问题是:幻灯片动画完成后,如何获得通知?我正在寻找一种方法来收听幻灯片动画事件(特别是像onSlideAnimationComplete()这样的内容)。有什么想法吗,伙计们 private boolean smoothSlideTo(float slideOffset) { final int topBound = getP

我正在使用ViewDragHelper将视图滑动到新位置,并尝试使用
ViewDragHelper.smoothSlideViewWTO(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;
}

在制作动画时,viewdraghelper似乎没有侦听器或回调,但您可以通过在ViewDragStateChanged上实现并通过其状态进行判断来解决此问题,如下所示:

    @Override
    public void onViewDragStateChanged(int state) {
        if (state == 0) {
            if (settleDestX == contentView.getLeft() && swipeOverListener != null) {
                swipeOverListener.onSwipeOver(settlePosition);
            }
        }
    }

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

see@pskink您能更具体地说明您的代码与我的问题的关系吗?我仍然不知道在哪里捕获动画完成事件。首先阅读文档,然后看看我是如何在代码中实现动画支持的,运行我的代码会很有帮助。你现在知道它是如何工作的吗?@pskink不,我不知道,你没有回答我的问题