安卓上级实验6-手势识别实验

上传人:Sc****h 文档编号:136505082 上传时间:2022-08-16 格式:DOC 页数:5 大小:267.50KB
收藏 版权申诉 举报 下载
安卓上级实验6-手势识别实验_第1页
第1页 / 共5页
安卓上级实验6-手势识别实验_第2页
第2页 / 共5页
安卓上级实验6-手势识别实验_第3页
第3页 / 共5页
资源描述:

《安卓上级实验6-手势识别实验》由会员分享,可在线阅读,更多相关《安卓上级实验6-手势识别实验(5页珍藏版)》请在装配图网上搜索。

1、课程名称姓名实验名称实验目的及要求实验环境实验内容算法描述及实验步骤调试过程及实验结果青岛理工大学课程实验报告嵌入式软件设计与开发班级软件 132实验日期2016.05.17孙玉东学号201307217实验成绩手势识别实验熟悉 Android 触摸处理的方法实现简单的手势识别。Win7,Eclipse1. 实现触摸处理( 1)为 Activity 添加触摸监听处理;( 2)在 OnTouch 中通过 MotionEvent 判断触摸事件类型;( 3)自己设计算法判断:手指在屏幕上进行上下左右滑动时, “上划”“下划”“左划”“右划”等简单的手势动作;2. 利用 GestureDetector

2、实现简单的手势识别手指在屏幕上进行上下左右滑动时,用Toast 显示“上划”“下划”“左划”“右划”。1.在 action_down 时获取开始的点2.在 action_up 时获取结束的点3.如果水平滑动距离大于竖直滑动距离并且差值大于0表示向右滑动4.水平距离大于竖直方向距离,并且差值小于0 表示向左滑动5.如果竖直方向距离大于水平方向距离并且差值大于0表示向下滑动6.如果竖直方向距离大于水平方向距离并且差值小于0表示向上滑动。实验方式 1 往右划方式 2 往右划2 向下滑动总结附录1.onTouchEvent中要返回 true 。2.event.getX()获取的时相对于父控件的位置,而

3、event.getRowX()获取的时相对于屏幕左上角的值。3. 如果在 MotionEvent.ACTION_MOVE是打印吐司会调用很多次。因为move方法是不停的在调用的。boolean onTouchEvent(MotionEventevent )4 GestureDetector 中要有这句代码 publicevent ) mDector .onTouchEvent( event);returnsuper .onTouchEvent(event );试验 1:OverridepublicbooleanonTouch(Viewv, MotionEventevent ) / TODOAu

4、to-generated method stub switch ( event .getAction()case MotionEvent.ACTION_DOWN:startx=event.getX();starty=event.getY();break;case MotionEvent.ACTION_MOVE:floatnowx=event.getX();floatnowy=event.getY();floatdisX=nowx -startx; / x方向移动的距离floatdisY=nowy -starty; / y方向移动的距离/ 当 x 方向移动的距离大于 y 方向移动的距离时if(M

5、ath.abs ( disX ) Math. abs ( disY )& disX 0 ) tv.setText(往右滑 );elseif(Math.abs ( disX ) Math.abs ( disY )&disX 0)tv.setText(往左滑);elseif(Math.abs ( disX ) 0)tv.setText(往下滑);elsetv.setText(往上滑);startx= (int)event .getRawX();starty= (int)event .getRawY();break ;case MotionEvent.ACTION_UP:returntrue ;);

6、实验二publicclassGestorActivityextendsActivity privateGestureDetectormDector ;OverrideprotectedvoidonCreate(BundlesavedInstanceState) super .onCreate(savedInstanceState);setContentView(R.layout.activity_gestor);mDector =new GestureDetector(this,new SimpleOnGestureListener()publicbooleanonFling(MotionEv

7、ente1, MotionEvente2,floatvelocityX , floatvelocityY) if(Math.abs ( e1 .getRawY() -e1 .getRawY() 100) Toast.returnmakeText (GestorActivity.thisToast.LENGTH_SHORT).show();true ;, 不能这样滑哦 ,if(Math.abs ( velocityX) 200) Toast.makeText (GestorActivity.this,往右滑,Toast.LENGTH_SHORT).show();returntrue ;if( e

8、1 .getRawX() -e2.getRawX() 200) Toast.makeText (GestorActivity.thisToast.LENGTH_SHORT).show();returntrue ;,往左滑,if( e2 .getRawY() -e1.getRawY() 200) Toast.makeText (GestorActivity.this, 往下滑 ,Toast.LENGTH_SHORT).show();returntrue ;if( e1 .getRawY() -e2.getRawY() 200) Toast.makeText (GestorActivity.this, 往上滑 ,Toast.LENGTH_SHORT).show();returntrue ;returnsuper .onFling(e1,e2 ,velocityX,velocityY););publicboolean onTouchEvent(MotionEvent mDector .onTouchEvent( event ); return super .onTouchEvent( event );event )

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!