我有一个ViewFlipper,并在其中包含四个滚动视图,其中包含布局。在ViewFlipper上滑动
我用下面的代码(每个滚动型)刷卡:
ScrollView View1 = (ScrollView) findViewById(R.id.View1);
View1.setOnTouchListener(new OnTouchListener() {
public boolean onTouch(View v, MotionEvent event) {
// TODO Auto-generated method stub
if (event.getAction() == MotionEvent.ACTION_DOWN) {
FirstX = (int) event.getX();
}
if (event.getAction() == MotionEvent.ACTION_MOVE) {
int LastX = (int) event.getX();
if (FirstX - LastX > SWIPE_MIN_DISTANCE) {
viewFlipper.setInAnimation(slideLeftIn);
viewFlipper.setOutAnimation(slideLeftOut);
viewFlipper.showNext();
} else if (LastX - FirstX > SWIPE_MIN_DISTANCE) {
viewFlipper.setInAnimation(slideRightIn);
viewFlipper.setOutAnimation(slideRightOut);
viewFlipper.showPrevious();
}
}
return true;
}
});
它的工作原理,但它看起来像如果我从视图1滑动即可查看2,我看到一个观点2和3混合在一起并且它终于显示了视图4.
因此,看起来每个视图的OnTouchListeners在彼此之后被调用。 我该如何防止这种情况发生?
一个简短而快速的滑动不会做它应该做的事情。
RG, 埃里克
从ACTION_MOVE改为ACTION_UP的确有窍门。 现在我可以在没有问题的情况下在滚动视图之间滑动。 谢谢。 – Eric