手势处理
来源:互联网 发布:南京的市政设计院 知乎 编辑:程序博客网 时间:2024/04/20 00:40
Android事件处理(event)分:按键处理和手势处理
手势处理指用户在设备的屏幕上的触控操作,通常包括按下、弹起、滑动等等,由这些基本操作可以构成各种常见手势,例如单击、长按、滑动等等。
处理触控操作主要依赖于重写Activity的onTouchEvent()方法,方法的参数MotionEvent中封装了触控相关的参数,例如触控点的坐标等。
如果只针对于某些控件,则可以通过调用控件对象的setOnTouchListener()方法为控件配置手势操作的监听器。
【注意】
在手势操作的处理中,需要保证多次的触控点的坐标范围,即单击时按下、弹起的坐标是允许存在一定差异的,滑动时按下、弹起的坐标是需要大于一定的差异的。
JAVA Activity:
public class MainActivity extends Activity {@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);}private float downX;//记录下按下的x的住标,声明变量//实现手势的处理,重写ontouch()方法@Overridepublic boolean onTouchEvent(MotionEvent event) {int action = event.getAction();//event是一个常量switch (action) {//手指按下case MotionEvent.ACTION_DOWN://在承载“event”对象事件“MotionEvent”的里面找对应的常量Log.d("tedu", "ACTION_DOWN,X="+event.getX()+",Y"+event.getY());//通过日志进行观察downX = event.getX();//变量的初始化break;//手指弹起case MotionEvent.ACTION_UP://在承载“event”对象事件“MotionEvent”的里面找对应的常量Log.i("tedu", "ACTION_UP,X="+event.getX()+",Y"+event.getY());//通过日志进行观察 #下面两个“if”不能写成“if...else...”格式#if (event.getX()-downX>50) {Log.w("tedu", "left->right");}if (downX-event.getX()>50) {//按下去的点减去弹起的点Log.w("tedu","right->left");}break;case MotionEvent.ACTION_MOVE:Log.v("tedu", "ACTION_MOVE,X="+event.getX()+",Y"+event.getY());}return super.onTouchEvent(event);}@Overridepublic boolean onCreateOptionsMenu(Menu menu) {// Inflate the menu; this adds items to the action bar if it is present.getMenuInflater().inflate(R.menu.main, menu);return true;}}
0 0
- 手势处理
- GLSurfaceView中处理手势
- IOS手势处理
- 处理手势操作
- iOS手势处理
- android手势处理
- Android手势处理
- iOS 手势处理
- UIGestureRecognizer(手势处理)
- android手势滑动处理
- iOS UIKit - 手势处理
- IOS手势处理
- 处理缩放手势
- 处理触摸和手势
- Android 手势处理实战
- 手势处理 ios
- delphixe手势处理流程
- UI事件处理:手势处理
- Django 有关数据库几个命令
- Win7 x64安装SVN服务器和客户端的曲折历程
- Eclipse安装JD-Eclipse反编译插件
- linux下安装jdk
- GB2312 Unicode UTF-8 编码表
- 手势处理
- 如何设计MVP中的Presentation层
- cocos自学笔记-环境搭建
- PCA(主成分分析)浅析
- android apk 反编译工具及教程
- haproxy lvs nginx 负载均衡的比较
- HDU1073 Online Judge
- Android 异步消息处理机制 让你深入理解 Looper、Handler、Message三者关系
- IAP15L2K61S2新建工程与点灯 -- 慕司板IAP15