博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
GestureDetector手势识别的各个方法
阅读量:6905 次
发布时间:2019-06-27

本文共 2862 字,大约阅读时间需要 9 分钟。

package com.example.velocity;import android.support.v7.app.ActionBarActivity;import android.os.Bundle;import android.view.GestureDetector;import android.view.GestureDetector.OnDoubleTapListener;import android.view.GestureDetector.OnGestureListener;import android.view.MotionEvent;import android.view.View;import android.view.View.OnTouchListener;import android.widget.RelativeLayout;public class MainActivity extends ActionBarActivity implements OnGestureListener, OnDoubleTapListener {    private RelativeLayout rl;    private GestureDetector gd;     @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);        rl = (RelativeLayout) findViewById(R.id.rl);        gd = new GestureDetector(this);        gd.setOnDoubleTapListener(this);        rl.setOnTouchListener(new OnTouchListener() {            @Override            public boolean onTouch(View v, MotionEvent event) {                boolean onTouchEvent = gd.onTouchEvent(event);                return onTouchEvent;            }        });    }        @Override    public boolean onDown(MotionEvent e) {        // TODO Auto-generated method stub        System.out.println("down");        return true;    }    @Override    public void onShowPress(MotionEvent e) {        // TODO Auto-generated method stub        System.out.println("没松开或者拖动");    }    @Override    public boolean onSingleTapUp(MotionEvent e) {        System.out.println("单击行为");        return true;    }    //滑动中触发    @Override    public boolean onScroll(MotionEvent e1, MotionEvent e2, float distanceX,            float distanceY) {//        System.out.println("onScroll");//        if(e1.getRawX()-e2.getRawX()<0){//            System.out.println("右滑");//        }else if(e1.getRawX()-e2.getRawX()>0){//            System.out.println("左滑");//        }        return false;    }    //长按    @Override    public void onLongPress(MotionEvent e) {        // TODO Auto-generated method stub            }    //滑动结束触发    @Override    public boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX,            float velocityY) {        if(e1.getRawX()-e2.getRawX()<-300){            System.out.println("右滑");        }else if(e1.getRawX()-e2.getRawX()>300){            System.out.println("左滑");        }        return true;    }        //严格的单击行为    @Override    public boolean onSingleTapConfirmed(MotionEvent e) {        // TODO Auto-generated method stub        return false;    }    //双击,不可能和onSingleTapConfirmed共同    @Override    public boolean onDoubleTap(MotionEvent e) {        // TODO Auto-generated method stub        return false;    }        @Override    public boolean onDoubleTapEvent(MotionEvent e) {        // TODO Auto-generated method stub        return false;    }}

 

转载于:https://www.cnblogs.com/84126858jmz/p/5457446.html

你可能感兴趣的文章
Apache与Nginx的优缺点比较
查看>>
【Linux】Install Redis on Centos
查看>>
keepalived主备节点都配置vip,vip切换异常案例分析
查看>>
我的2014--新的开始,新的征程,加油!
查看>>
排序算法(一)
查看>>
使用jconsole监控tomcat性能情况
查看>>
ligerui grid行编辑示例
查看>>
linux安装或移植zencart系统
查看>>
动态权限
查看>>
MySQL 主从复制
查看>>
LayoutBuilder 构建一个窗口大小的widget树。 并可以获取widget 的狂宽高
查看>>
Python OpenCV学习笔记之:图像金字塔
查看>>
3月上旬中国数据域名总量跌至22.8万个 增长略有波动
查看>>
3月末全球域名商域名解析量23强:爱名网跌至第十七
查看>>
yii2 资源目录问题
查看>>
基于TensorFlow.js的JavaScript机器学习
查看>>
Cisco三层vlan与路由配置
查看>>
htpasswd设置HTTP Basic认证 保护管理后台页面
查看>>
Android自定义控件之轮播图控件
查看>>
Lucene介绍和创建索引和搜索初步
查看>>