我想在我的应用中实现此功能。
问题是,所有的 swipeRefreshLayouts 都只能用于下拉手势。
我想在我的 recyclerView 中向左/向右滑动,当我达到最左边时,然后像 swipeRefreshLayout 一样滑动布局并显示刷新。
这可能吗?
最佳答案
public class CustomSwipeToRefresh extends SwipeRefreshLayout {
private int mTouchSlop;
private float mPrevX;
public CustomSwipeToRefresh(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:
mPrevX = MotionEvent.obtain(event).getX();
break;
case MotionEvent.ACTION_MOVE:
final float eventX = event.getX();
float xDiff = Math.abs(eventX - mPrevX);
if (xDiff > mTouchSlop) {
return false;
}
}
return super.onInterceptTouchEvent(event);
}
}
使用此 CustomSwipeToRefresh 而不是 SwipeRefreshLayout
关于android - 向左滑动刷新水平recyclerView,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38997267/