GestureViewBinder icon indicating copy to clipboard operation
GestureViewBinder copied to clipboard

解决View 需要自己处理事件的问题,就不提pr了

Open TrueloveSomeGIRl opened this issue 5 years ago • 0 comments

public class OutLayout extends RelativeLayout { private boolean mScrolling; private float StartX, EndX; private float StartY, EndY;

public OutLayout(Context context) {
    this(context, null);
}

public OutLayout(Context context, AttributeSet attrs, int defStyleAttr) {
    super(context, attrs, defStyleAttr);
}

public OutLayout(Context context, AttributeSet attrs) {
    this(context, attrs, 0);
}

@Override
public boolean onInterceptTouchEvent(MotionEvent event) {
    switch (event.getAction()) {
        case MotionEvent.ACTION_DOWN:
            StartX = event.getX();
            StartY = event.getY();
            mScrolling = false;
            break;
        case MotionEvent.ACTION_MOVE:
            if (Math.abs(StartX - event.getX()) >= ViewConfiguration.get(getContext()).getScaledTouchSlop() || Math.abs(StartY - event.getY()) >= ViewConfiguration.get(getContext()).getScaledTouchSlop()) {
                mScrolling = true;
            } else {
                mScrolling = false;
            }
            break;
        case MotionEvent.ACTION_UP:
            mScrolling = false;
            break;
    }
    return mScrolling;
}


@Override
public boolean onTouchEvent(MotionEvent event) {
    switch (event.getAction()) {
        case MotionEvent.ACTION_DOWN:
            return true;
        case MotionEvent.ACTION_MOVE:
            break;
        case MotionEvent.ACTION_UP:
            EndX = event.getX();
            EndY = event.getY();
            if (StartX != EndX || StartY != EndY) {
                view.isReturn = false;
            } else {
                view.isReturn = true;
            }
            break;
    }
    return super.onTouchEvent(event);
}

} ///////////------------------------------view 自己的事件 根据上面动态改变返回值 static boolean isReturn;

@Override
public boolean onTouchEvent(MotionEvent pMotionEvent) {

    return isReturn;

}

TrueloveSomeGIRl avatar Apr 18 '19 07:04 TrueloveSomeGIRl