PullScrollView
PullScrollView copied to clipboard
在PullScrollView中加入ImageView,OnClick事件被占用。
建议在MotionEvent.ACTION_MOVE返回默认,在MotionEvent.ACTION_UP返回false,以便事件向下分发。不知是否理解有误,望指导。
我的也是这个,子控件点击事件被占用了!
请问解决了吗?
我的做法是:在PullScrollView中,注释掉 onInterceptTouchEvent方法,ACTION_MOVE下返回默认值,在MotionEvent.ACTION_UP返回false,让事件向下分发,回复慢了,抱歉!!代码如下:
// @Override
// public boolean onInterceptTouchEvent(MotionEvent ev) {
// return onTouchEvent(ev) || super.onInterceptTouchEvent(ev);
// }
@Override
public boolean onTouchEvent(MotionEvent ev) {
if (mContentView != null) {
int action = ev.getAction();
switch (action) {
case MotionEvent.ACTION_DOWN:
mStartPoint.set(ev.getX(), ev.getY());
mCurrentTop = mInitTop = mHeader.getTop();
mCurrentBottom = mInitBottom = mHeader.getBottom();
return super.onTouchEvent(ev);
case MotionEvent.ACTION_MOVE:
float deltaY = Math.abs(ev.getY() - mStartPoint.y);
if (deltaY > 10 && deltaY > Math.abs(ev.getX() - mStartPoint.x)) {
mHeader.clearAnimation();
mContentView.clearAnimation();
doActionMove(ev);
}
return super.onTouchEvent(ev);
// break;
case MotionEvent.ACTION_UP:
// 回滚动画
if (isNeedAnimation()) {
rollBackAnimation();
}
if (getScrollY() == 0) {
mState = State.NORMAL;
}
isMoving = false;
return false;
// break;
default:
return false;
// break;
}
}
貌似还是不行啊