Android手势识别器

原创 2015年11月18日 08:54:55
--------------------监听屏幕滑动事件------------

// 1.声明一个手势识别器
	private GestureDetector gd;

// 2.初始化一个手势识别器
		gd = new GestureDetector(this, new GestureDetector.SimpleOnGestureListener() {

			// 滑动事件
			@Override
			public boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX, float velocityY) {
				// e1表示第一个按下的点 e2表示第二个按下的点

				// 识别下一步 第一个点要比第二个点大200个像素
				if ((e1.getRawX() - e2.getRawX()) > 200) {
					ShowNext();
					// 事件已经处理 无需在进行处理返回true
					return true;
				}
				return super.onFling(e1, e2, velocityX, velocityY);
			}

		});

// 3.用手势识别器,检查屏幕上的手势
	public boolean onTouchEvent(MotionEvent event) {
		gd.onTouchEvent(event);
		return super.onTouchEvent(event);
	}

-----(2).多个界面监听手势识别器

创建一个类继承Activity


 创建需要的抽象方法

public abstract class BaseSetupGestureDetector extends Activity {
	private GestureDetector gd;

	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		gd = new GestureDetector(this, new GestureDetector.SimpleOnGestureListener() {

			@Override
			public boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX, float velocityY) {

				// 上一步
				if ((e2.getRawX() - e1.getRawX()) > 200) {
					ShowPrevious();
					return true;
				}

				// 下一步
				if ((e1.getRawX() - e2.getRawX()) > 200) {
					ShowNext();
					return true;
				}
				return super.onFling(e1, e2, velocityX, velocityY);
			}

		});
	}

	// 3.用手势识别器,检查屏幕上的手势
	public boolean onTouchEvent(MotionEvent event) {
		gd.onTouchEvent(event);
		return super.onTouchEvent(event);
	}

	public abstract void ShowNext();

	public abstract void ShowPrevious();

	// 点击事件
	public void Setup_Next(View view) {
		ShowNext();
	}

	// 点击事件
	public void Setup_Previous(View view) {
		ShowPrevious();
	}

}





Android手势识别器GestureDetector

以前只知道控件的onTouchEvent()事件,它的动作有MotionEvent.ACTION_DOWN、MotionEvent.ACTION_MOVE、MotionEvent.ACTION_UP;...
  • yangshuangyue
  • yangshuangyue
  • 2016年12月08日 18:32
  • 1417

Android+手势识别详解

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

Android的手势操作识别

转自:http://jcodecraeer.com/a/anzhuokaifa/androidkaifa/2012/1020/448.html Android的手势操作识别 时...
  • comikey
  • comikey
  • 2012年12月13日 14:31
  • 34465

Android中级:GestureDetector

Android基础:手势识别我们开启activity,通常是这样的:通过点击某个按钮来开启,这里我们不设置按钮,通过监听手势(左滑/右滑),来实现activity的切换。 效果图 有3个Activi...
  • ss1168805219
  • ss1168805219
  • 2016年04月22日 01:05
  • 1420

Android手势识别GestureDetector详解

一、概述当用户触摸屏幕的时候,会产生许多手势,例如down,up,scroll,filing等等。一般情况下,我们知道View类有个View.OnTouchListener内部接口,通过重写他的onT...
  • zhangyalong_android
  • zhangyalong_android
  • 2017年04月07日 11:54
  • 1117

Android手势识别GestureDetector分析

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

Android手势识别和双击事件

安卓触摸屏的手势识别在很多时候会使用户操作更加方便: 实现原理主要是将该界面的onTouchEvent设置为GestureDetector的onTouchEvent: 具体实现代码: 1.在Ac...
  • rongwenbin
  • rongwenbin
  • 2014年09月29日 11:58
  • 339

android手势识别器

android开发中,一般使用系统自带的手势识别器 GestureDetector         GestureDetector mGestureDetector = new GestureDet...
  • vipdatoucth
  • vipdatoucth
  • 2015年03月08日 16:45
  • 392

Android-自定义手势识别-复杂手势识别

一、概述 1、手势交互过程(原理) (1)触屏一刹那,触发MotionEvent事件 (2)被OnTounchListener监听,在onTouch()中获得MotionEvent对象 (3)...
  • SQ_Bang
  • SQ_Bang
  • 2016年07月17日 20:37
  • 1047

复杂背景下的手势识别应用于Android手机相册

采用了HOG+SVM的方法对4种手势进行识别,即采用梯度方向直方图(histograms of oriented gradient,HOG)用于提取手势特征,采用支持向量机(support vecto...
  • ichangjian
  • ichangjian
  • 2013年09月12日 18:36
  • 2460
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Android手势识别器
举报原因:
原因补充:

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