Android手势识别

原创 2016年05月31日 22:39:40

识别上下左右滑动就要使用GestureDetector

1.声明GestureDetector.对象

2.实现手势识别方法onFling

3.在onTouchEvent中为GestureDetector传入事件

import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.GestureDetector;
import android.view.MotionEvent;
import android.view.View;
import android.widget.Toast;

import com.itheima.mobilesafe.R;

public abstract class BaseSetupActivity extends Activity {

	//声明手势识别对象
	private GestureDetector gestureDetector;
	
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		//实现手势识别方法
		gestureDetector  = new GestureDetector(this, new GestureDetector.SimpleOnGestureListener(){

			/* 
			 * e1 手机触摸时按下的事件,从它里面获得事件所有的信息
			 * e2 手机触摸时抬起的事件,从它里面获得事件所有的信息
			 * velocityX 在水平方向移动的速度(每秒多个像素)
			 * velocityY 在水平方向移动的速度(每秒多个像素)
			 */
			@Override
			public boolean onFling(MotionEvent e1, MotionEvent e2,
					float velocityX, float velocityY) {
				int startX = (int) e1.getRawX();
				int endX = (int) e2.getRawX();
				
				if(Math.abs(velocityX) < 10){
					Toast.makeText(BaseSetupActivity.this, "哥,滑动的快动快一点嘛", 0).show();
					return true;
				}
					
				if((endX - startX) >= 200){
					//显示前一个界面
					pre(null);
					return true;
				}
				
				if((startX - endX) >= 200){
					//显示后一个界面
					next(null);
					return true;
				}
				
				return super.onFling(e1, e2, velocityX, velocityY);
			}
			
		});

	}
	
	/**
	 * 触摸事件
	 */
	@Override
	public boolean onTouchEvent(MotionEvent event) {
		//触摸事件传入手势识别器
		gestureDetector.onTouchEvent(event);
		return super.onTouchEvent(event);
	}


	/**
	 * 留给子类来实现
	 * @param view
	 */
	public abstract void next(View view);
	
	/**
	 * 留给子类来实现
	 * @param view
	 */
	public abstract void pre(View view);
	
}


版权声明:本文为博主原创文章,转载请注明出处

相关文章推荐

android 手势识别

  • 2014年09月03日 17:24
  • 48KB
  • 下载

android手势识别

  • 2016年12月27日 08:45
  • 177KB
  • 下载

【Android界面实现】使用GestureOverlayView控件实现手势识别

在Android开发中,我们不光可以使用已有的实现方式,而且,我们还可以利用Android这个智能手机平台,实现一些比较有特色的功能。本篇文章使用...

Android 手势识别的API简单使用

  • 2015年10月04日 20:48
  • 2.82MB
  • 下载

Android手势识别GestureDetector分析

  • 2015年10月14日 15:39
  • 2.01MB
  • 下载

Android+手势识别详解

今天就来把以前的学习文章与经验简单总结中出来吧,在这里我就直接把代码贴下来了,希望能给初学者做最佳的学习参考,也希望有更多的开发人员来加入ANDROID开发团队,参与更多的创新方式的开发,好了,今天我...

Android 带手势识别的音乐播放器

  • 2012年04月09日 10:39
  • 714KB
  • 下载

gesture手势识别Android源代码

  • 2014年10月15日 00:21
  • 25KB
  • 下载

Android技术——视图切换(四)“ViewSwitcher+手势识别”实现视图的滑动切换

上文《Android技术——视图切换(三)》实现的图片切换,虽然切换时有动画效果,但是却需要使用按钮才能切换。这个实例中,将尝试用手势识别代替按钮来实现图片切换。 这个实例也是基于前三篇文章里的项目添...

android 手势识别学习

  • 2012年04月12日 18:44
  • 57KB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Android手势识别
举报原因:
原因补充:

(最多只允许输入30个字)