手势识别

Android触控屏幕Gesture(GestureDetector和SimpleOnGest...

你说的曾经没有我的故事 提交于 2019-12-10 08:20:24
1、当用户触摸屏幕的时候,会产生许多手势,例如down,up,scroll,filing等等,我们知道View类有个View.OnTouchListener内部接口,通过重写他的onTouch(View v, MotionEvent event)方法,我们可以处理一些touch事件,但是这个方法太过简单,如果需要处理一些复杂的手势,用这个接口就会很麻烦(因为我们要自己根据用户触摸的轨迹去判断是什么手势)Android sdk给我们提供了GestureDetector(Gesture:手势Detector:识别)类,通过这个类我们可以识别很多的手势,主要是通过他的onTouchEvent(event)方法完成了不同手势的识别。虽然他能识别手势,但是不同的手势要怎么处理,应该是提供给程序员实现的,因此这个类对外提供了两个接口:OnGestureListener,OnDoubleTapListener,还有一个内部类SimpleOnGestureListener,SimpleOnGestureListener类是GestureDetector提供给我们的一个更方便的响应不同手势的类,这个类实现了上述两个接口(但是所有的方法体都是空的),该类是static class,也就是说它实际上是一个外部类。程序员可以在外部继承这个类,重写里面的手势处理方法。

Android触控屏幕Gesture(GestureDetector和SimpleOnGest...

被刻印的时光 ゝ 提交于 2019-12-10 08:02:42
1、当用户触摸屏幕的时候,会产生许多手势,例如down,up,scroll,filing等等,我们知道View类有个View.OnTouchListener内部接口,通过重写他的 onTouch ( View v, MotionEvent event)方法,我们可以处理一些touch事件,但是这个方法太过简单,如果需要处理一些复杂的手势,用这个接口就会很麻烦(因为我们要自己根据用户触摸的轨迹去判断是什么手势)Android sdk给我们提供了GestureDetector(Gesture:手势Detector:识别)类,通过这个类我们可以识别很多的手势,主要是通过他的onTouchEvent(event)方法完成了不同手势的识别。虽然他能识别手势,但是不同的手势要怎么处理,应该是提供给程序员实现的,因此这个类对外提供了两个接口:OnGestureListener,OnDoubleTapListener,还有一个内部类SimpleOnGestureListener,SimpleOnGestureListener类是GestureDetector提供给我们的一个更方便的响应不同手势的类,这个类实现了上述两个接口(但是所有的方法体都是空的),该类是static class,也就是说它实际上是一个外部类。程序员可以在外部继承这个类,重写里面的手势处理方法。

【Android游戏开发十六】Android Gesture之【触摸屏手势识别】操作!利用触摸屏手势实现一个简单切换图片的功能!

ぃ、小莉子 提交于 2019-12-09 15:34:28
李华明Himi 原创,转载务必在明显处注明: 转载自 【黑米GameDev街区】 原文链接: http://www.himigame.com/android-game/337.html 很多童鞋说我的代码运行后,点击home或者back后会程序异常,如果你也这样遇到过,那么你肯定没有仔细读完Himi的博文,第十九篇Himi专门写了关于这些错误的原因和解决方法,这里我在博客都补充说明下,省的童鞋们总疑惑这一块;请点击下面联系进入阅读: 【Android游戏开发十九】(必看篇)SurfaceView运行机制详解—剖析Back与Home按键及切入后台等异常处理! 本文补充: 网上很多关于手势文章都说Android 对手势的支持是从SDK 1.6 (也就是 API 4)才开始的,但是我用SDK1.5模拟器也能识别!。(本想测试下更低的SDK的支持效果,但是我没有SDK低于1.5版本的....我手机SDK 2.2的 - -、),所以查了Api 发现: android.view.GestureDetector.OnGestureListener; since api-1 , android.view.GestureDetector; since api-1 , 从API来看从api-1开始就已经支持手势和手势监听器了,那么很多说api-4才支持这句话也没错!因为: android

Android 手势(Gesture)

喜夏-厌秋 提交于 2019-12-09 15:03:42
一、什么是手势? 所谓手势,其实就是指用户手指或触摸笔在触摸屏上的连续触碰行为,比如在屏幕上葱左至右划出一个动作,就是手势,再比如在屏幕上画一个圆圈也是一个手势,手势这种连续的触碰会形成某个方向上的移动趋势,也会形成一个不规则的几何图形。Android对两种手势行为都提供了支持: 1、对于第一种手势行为而言,Android提供了手势检测,并为手势检测提供了相应的监听器。 2、对于第二种手势行为,Android允许开发者添加手势,并提供了相应的API识别用户手势 二、手势检测 Android为手势检测提供了一个 GestureDetector 类, GestureDetector实例代表了一个手势检测器,创建 GestureDetector时需要传入一个 GestureDetector. On GestureListener 监听器,负责对用户的手势行为提供响应。 GestureListener包含的事件处理方法如下: boolean onDown(MotionEvent e) :当触碰事件按下时触发该方法。 boolean onFling(MotionEvent e1,MotionEvent e2,float velocityX,float velocityY) :当用户在触摸屏上"拖过"时触发该方法。其中 velocityX, velocityY代表"拖过"动作在横向

Android事件处理之多点触摸与手势识别

ぐ巨炮叔叔 提交于 2019-12-09 14:56:40
一、Muilti-touch 双指缩放的实现探索: 首先要实现OnTouchListener接口,然后重写方法 : public boolean onTouch(View v, MotionEvent event); 从这个方法中我们就可以获取实现两指缩放功能的全部信息。 View v是触发事件的源,MotionEvent event即一个触摸事件。对屏幕的几乎所有操作都会触发事件,如点击、放开、滑动等。 不同的事件在MotionEvent中有不同的id,我们可以根据event.getAction() & MotionEvent.ACTION_MASK的结果来判断是何种事件。 有如下事件使我们要用到的: MotionEvent.ACTION_DOWN:在第一个点被按下时触发 MotionEvent.ACTION_UP:当屏幕上唯一的点被放开时触发 MotionEvent.ACTION_POINTER_DOWN:当屏幕上已经有一个点被按住,此时再按下其他点时触发。 MotionEvent.ACTION_POINTER_UP:当屏幕上有多个点被按住,松开其中一个点时触发(即非最后一个点被放开时)。 MotionEvent.ACTION_MOVE: 当有点在屏幕上移动时触发。值得注意的是,由于它的灵敏度很高,而我们的手指又不可能完全静止(即使我们感觉不到移动,但其实我们的手指也在不停地抖

iOS开发之触摸事件以及手势

无人久伴 提交于 2019-12-09 13:10:17
iOS中的事件分为三类:触摸事件、加速计事件、远程控制事件。 只有继承了UIResponder的对象才能接收并处理事件,称之为“响应者对象”。 UIApplication、UIViewController、UIView都继承自UIResponder。 UIResponder内部提供的方法来处理事件: 触摸事件:touchesBegan、touchesMoved、touchesEnded、touchesCancelled 加速计事件:motionBegan、motionEnded、motionCancelled 远程控制事件:remoteControlReceivedWithEvent UIVeiw的触摸事件处理过程: /** * 当手指开始触摸view时调用 * * @param touches <#touches description#> * @param event <#event description#> */ - (void)touchesBegan:(NSSet<UITouch *> *)touches withEvent:(UIEvent *)event { NSLog(@"%s",__func__); } /** * 当手指在view上移动时调用 * * @param touches <#touches description#> * @param event <

利用百度大脑手势识别,快速实现人机交互体验设计

好久不见. 提交于 2019-12-05 00:41:14
1.功能描述: 对于输入的一张图片(可正常解码,且长宽比适宜),检测图片中的所有人手,输出每只手的坐标框、21个骨节点坐标信息。 2.平台接入 具体接入方式比较简单,可以参考我的另一个帖子,这里就不重复了: http://ai.baidu.com/forum/topic/show/943327 3.调用攻略(Python3)及评测 3.1首先认证授权: 在开始调用任何API之前需要先进行认证授权,具体的说明请参考: http://ai.baidu.com/docs#/Auth/top 具体Python3代码如下: # -*- coding: utf-8 -*- #!/usr/bin/env python import urllib import base64 import json #client_id 为官网获取的AK, client_secret 为官网获取的SK client_id =【百度云应用的AK】 client_secret =【百度云应用的SK】 #获取token def get_token(): host = ' https://aip.baidubce.com/oauth/2.0/token?grant_type=client_credentials&client_id= ' + client_id + '&client_secret=' + client

加速度计

喜夏-厌秋 提交于 2019-12-04 23:18:14
加速度计 正如其名字所暗示的那样,BBC micro:bit加速度计:位测量加速度。加速度可以测量 +2g到-2g之间的加速度。 Micro:bit沿着三个轴测量运动: X - 从左向右倾斜。 Y - 向前和向后倾斜。 Z - 上下移动。 基本功能 每个轴的测量值为正数或负数,以毫欧为单位表示数值。当读数为0时,沿着该特定轴是“水平”。1024毫微克是重力加速度。 你可以一次访问一个加速度测量值,或者一次获取所有三个值并将其存储在一个列表中。现在只需使用下面的代码: from microbit import * while True: x = accelerometer.get_x() y = accelerometer.get_y() z = accelerometer.get_z() print("x, y, z:", x, y, z) sleep(500) 上传并打开串口监视器。握住microbit LED最上面。您应该看到X和Y加速度接近零,Z加速度接近-1024。这告诉你重力相对于微位向下。翻转电路板,使LED离地面最近。Z值在+1024毫克时应为正值。如果你强烈地摇动你的micro:bit,你会看到加速度达到±2048毫克。那是因为这个加速度计被设置为测量最大值±2048毫吉-g:真实的数字可能会比这更高。 如果你想知道手机如何知道在屏幕上显示图像

工程实践用例建模Use Case Modeling

烂漫一生 提交于 2019-12-02 23:54:53
用例建模就是通过对软件需求的调研,从具体的功能性需求中抽象出用例模型的工作过程。参与者和用例由对功能性需求的分析来确定,用例图是参与者和用例的可视化表示。用例图中的四种关系:   1.关联:建立参与者与用例通信的渠道,当然关联可以是双向的,可以是单向的。箭头的方向表示消息的传递方向。   2.依赖:一个用例受到另一个用例的影响。   3.包含:基USE CASE图本用例的行为包含了另一个用例的行为   4.扩展:扩展用例是基本用例的一个扩展   5.泛化:存在于Actor和Use case之间,例如数学老师是老师的泛化,从特殊指向一般。 用例建模的作用: 用例模型是一种标准的语言,是开发人员之间交流和沟通的媒介,可以精确地定义软件需求,出现歧义的可能性很小,这可以保证用户和开发人员对需求理解的一致性。用例模型在整个开发过程中都扮演着非常重要的角色,它可以驱动软件的分析和设计逐步细化。最后,测试过程中那些关注软件功能的测试用例,往往也是根据用例模型来确定的。 用例步骤: 确定系统边界 确定参与者 找出所有的用例 确定每个用例的级别 撰写用例的文字描述 画出以整个系统为对象的顺序图 我的工程实践的目的是手势识别,模拟键盘鼠标操作等,下图展示了项目的部分用例图。只是手势交互业务建模,不是对系统建模。                                           

百度大脑手势识别使用攻略

白昼怎懂夜的黑 提交于 2019-12-02 06:40:00
作者:busyboxs 上次我尝试做了一个给眼镜加特效,针对的是静态图像,具体文章参考 https://ai.baidu.com/forum/topic/show/942890 。 这次我尝试在视频中加眼镜特效,并且加上手势识别,不同的手势佩戴不同的眼镜。接下来将介绍手势识别接口,并介绍如何接入。 手势识别接口 接口描述 识别图片中的手势类型,返回手势名称、手势矩形框、概率分数,可识别24种常见手势,适用于手势特效、智能家居手势交互等场景。 支持的24类手势列表:拳头、OK、祈祷、作揖、作别、单手比心、点赞、Diss、我爱你、掌心向上、双手比心(3种)、数字(9种)、Rock、竖中指。 注: •上述24类以外的其他手势会划分到other类。 •除识别手势外,若图像中检测到人脸,会同时返回人脸框位置。 人体分析的请求方式和人脸识别的请求方式有所不同,具体的使用说明参见文档 https://ai.baidu.com/docs#/Body-API/27495b11 请求格式 POST 方式调用,请求 URL 为 https://aip.baidubce.com/rest/2.0/image-classify/v1/gesture ,Content-Type 为 application/x-www-form-urlencoded,然后通过 urlencode 格式化请求体。 请求参数