ViewFlipper配合GestureDetector

ViewFlipper配合GestureDetector   ViewFlipper配合GestureDetector
 
主要代码:

 

			/**
			 * 用户按下触摸屏、快速移动后松开即触发这个事件 e1:第1个ACTION_DOWN MotionEvent e2:最后一个ACTION_MOVE
			 * MotionEvent: velocityX:X轴上的移动速度,像素/秒 velocityY:Y轴上的移动速度,像素/秒 触发条件 :
			 * X轴的坐标位移大于FLING_MIN_DISTANCE,且移动速度大于FLING_MIN_VELOCITY个像素/秒
			 */
			@Override
			public boolean onFling(MotionEvent e1, MotionEvent e2,
					float velocityX, float velocityY) {
				if (e1.getX() - e2.getX() > FLING_MIN_DISTANCE) {
					if (currentIndex < IMAGES.length - 1) {
						currentIndex++;
						View view = new View(Test.this);
						view.setBackgroundResource(IMAGES[currentIndex]);
						viewFlipper.addView(view);

						viewFlipper.setInAnimation(AnimationUtils
								.loadAnimation(Test.this, R.anim.push_left_in));
						viewFlipper
								.setOutAnimation(AnimationUtils.loadAnimation(
										Test.this, R.anim.push_left_out));

						viewFlipper.showNext();
					}
					generatePageControl();
					return true;
				} else if (e1.getX() - e2.getX() < -FLING_MIN_DISTANCE) {
					if (currentIndex > 0) {
						currentIndex--;
						viewFlipper
								.setInAnimation(AnimationUtils.loadAnimation(
										Test.this, R.anim.push_right_in));
						viewFlipper
								.setOutAnimation(AnimationUtils.loadAnimation(
										Test.this, R.anim.push_right_out));
						viewFlipper.showPrevious();
					}
					generatePageControl();
					return true;
				}
				return false;
			}

你可能感兴趣的:(velocity)