我正在尝试使用Xamarin在我的viewpager中禁用某个方向的滑动。所以我定义了一个自定义viewPager并重写OnInterceptTouchEvent方法来检查手势方向。
我的问题是我的案例MotionEventActions.Move
从未被解雇,而MotionEventActions.Down
。我已经检查了return并尝试了不同(在MotionEventActions.Down
情况下返回true或false,但没有任何结果。
public override bool OnInterceptTouchEvent (MotionEvent ev)
{
if (Enabled) {
switch (ev.Action) {
case MotionEventActions.Move:
if (lastX > ev.GetX ()) {
// Swipe right to left
swipeLeft = true;
swipeRight = false;
} else {
// Swipe left to right
swipeLeft = false;
swipeRight = true;
}
lastX = ev.GetX ();
break;
case MotionEventActions.Down:
lastX = ev.GetX ();
break;
}
lastX = ev.GetX();
/*
// Swipe right to left enable
if(EnabledLeft) {
return true;
}
// Swipe left to right enable
if(EnabledRight) {
return true;
} else {
return false;
}
*/
}
return false;
}
我只想解雇此案例以更新我的lastX变量......