5
ビューページのスクロールを一方向に制限する方法を教えてください。たとえば、右にスワイプを許可しますが、左にはスワイプを許可しないでください。私は絶対に立ち往生しています、どんな助けも大歓迎です。これをAndroidバージョン2.2で動作させる必要があることに注意するため、ViewPagerの互換ライブラリを使用しています。あなたは、元のViewPagerを拡張し、独自のViewPagerを作り、onTouchEvent方法ビューページで特定の方向にスワイプしないようにする
public class CustomViewPager extends ViewPager {
float lastX = 0;
boolean lockScroll = false;
public CustomViewPager(Context context, AttributeSet attrs) {
super(context, attrs);
}
public CustomViewPager(Context context) {
super(context);
}
@Override
public boolean onTouchEvent(MotionEvent ev) {
switch (ev.getAction()) {
case MotionEvent.ACTION_DOWN:
lastX = ev.getX();
lockScroll = false;
return super.onTouchEvent(ev);
case MotionEvent.ACTION_MOVE:
if (lastX > ev.getX()) {
lockScroll = false;
} else {
lockScroll = true;
}
lastX = ev.getX();
break;
}
lastX = ev.getX();
if(lockScroll) {
return false;
} else {
return super.onTouchEvent(ev);
}
}
}
こんにちはアリを上書きする必要があります –
別のトリック、次のビューにスクロールすると、最初のものを削除します。私は数分後に更新します。 –
私の答えが更新され、新しいコードがテストされ、うまくいきました。 –