我的应用程序中出现了一些小错误。
当我开始滚动以移动到ViewPager
SwipeToRefreshLayout
中的下一页时,请抓住我的滑动功能,我无法更改页面。
如何为SwipeRefreshLayout
设置delta?
答案 0 :(得分:2)
我通过扩展SwipeRefreshLayout
解决了这个问题,并且禁止拦截横向滚动,如下所示。这是我在stackoverflow上找到的修改后的代码。
public class PullToRefresh extends SwipeRefreshLayout {
private final int mTouchSlop;
private float mTouchDownX;
public PullToRefresh(Context context, AttributeSet attrs) {
super(context, attrs);
mTouchSlop = ViewConfiguration.get(context).getScaledTouchSlop();
}
@Override
public boolean onInterceptTouchEvent(MotionEvent event) {
switch (event.getAction()) {
case MotionEvent.ACTION_DOWN:
mTouchDownX = event.getX();
break;
case MotionEvent.ACTION_MOVE:
if (Math.abs(event.getX() - mTouchDownX) > mTouchSlop) {
return false;
}
break;
}
return super.onInterceptTouchEvent(event);
}
}