Android 滑动手势简单使用方法
2015-07-20 17:56
585 查看
用法:首先让指定的Activity实现Android.view.OnGestureListener,然后在你需要调用GestureDetector的View上,添加onTouchListener,之后setLongClickable(true)即可.
如:
customView.setOnTouchListner(xxxListener);
customView.setLongClickable(true);
之后就可以在onFling方法中设置你想要的手势.
onFling方法参数解释:
onFling(MotionEvent e1, MotionEvent e2, float velocityX,float velocityY)
官方解释:
Notified of a fling event when it occurs with the initial on down
Specified by: onFling(...) in
OnGestureListener
Parameters:e1 The first down motion event that started the fling.e2 The move motion event that triggered the current onFling.velocityX The velocity of this fling measured in pixels per second along the x axis.velocityY The velocity of this fling measured in pixels per second along the y axis.Returns:true if the event is consumed, else false
大致意思:
e1代表手指按下的瞬间触发的事件,
e2代表手指未弹起,移动时触发的事件
剩下两个参数大致意思是每秒钟在x,y方向上移动的像素点数.
所以,通过e1和e2即可创造出手势的判断条件.
简单左右滑动手势代码:
如:
customView.setOnTouchListner(xxxListener);
customView.setLongClickable(true);
之后就可以在onFling方法中设置你想要的手势.
onFling方法参数解释:
onFling(MotionEvent e1, MotionEvent e2, float velocityX,float velocityY)
官方解释:
Notified of a fling event when it occurs with the initial on down
MotionEventand the matching up
MotionEvent. The calculated velocity is supplied along the x and y axis in pixels per second.
Specified by: onFling(...) in
OnGestureListener
Parameters:e1 The first down motion event that started the fling.e2 The move motion event that triggered the current onFling.velocityX The velocity of this fling measured in pixels per second along the x axis.velocityY The velocity of this fling measured in pixels per second along the y axis.Returns:true if the event is consumed, else false
大致意思:
e1代表手指按下的瞬间触发的事件,
e2代表手指未弹起,移动时触发的事件
剩下两个参数大致意思是每秒钟在x,y方向上移动的像素点数.
所以,通过e1和e2即可创造出手势的判断条件.
简单左右滑动手势代码:
@Override public boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX, float velocityY) { // TODO Auto-generated method stubto if (e1.getX() > e2.getX()) { Log.i("msg", "<<<<<<<<<"); } else { Log.i("msg", ">>>>>>>>>"); } Toast.makeText(this, "Fling", 0).show(); return false; }
相关文章推荐
- Android 5.0.1 Layout_toLeftOf不生效
- android 通过ApplicationInfo 从androidmanifest 中的application中读取信息。
- Android应用程序中用Broadcast来监测"断网",并进行相应处理
- android之动画
- 浅谈对Android Service 的理解
- 在Android Studio中使用Lambda表达式
- android Json解析全
- Android启动Activity之后阻止EditText自动获得焦点
- android 多线程笔记
- android TextView 支持自定义字体和属性
- Android中ViewPgae中的Fragment如何确认当前页面可见的问题
- android 编码规范
- Android是如何在不同屏幕上适配图片的 -- 或控件大小
- **android Intent 的Componet ,Action ,Category,Data,Type,Extra,Flag 7种属性详解
- android中各种Intent跳转(邮件、音频、联系人....)
- Android开发之ListView-BaseAdapter的使用
- [Android]使用ProGuard遇到“conversion to Dalvik format failed with error 1”错误的解决办法
- Android sqlite数据库操作卡顿解决办法
- android Scroller浅析
- 删除android工程不再使用的资源文件