VideoView的事件监听
来源:互联网 发布:达内编程培训 编辑:程序博客网 时间:2024/05/01 04:27
对VideoView setOnClickListener时,发现无效,搜索一番后找到解决方案;同时监听VideoView的点击双击和滑动事件,通过对VideoView的OnTouchListener设置进行监听,首先实例化一个手势识别器,并返回它的onTouchEvent。然后初始化GestureDetector ,这里面有一个坑,如果单纯的设置OnGestureListener,发现当onDown的返回值为true的时候可以响应单击长摁和滑动事件,为false的时候只会响应长摁事件;如果想要监听双击事件,就要对GestureDetector设置OnDoubleTapListener,需要注意的的是,在OnGestureListener的onDown返回值为false的时候OnDoubleTapListener里面所有的回调是不会去响应的
GestureDetector mGesture; @Override public boolean onTouch(View v, MotionEvent event) { if (mGesture == null) { mGesture = new GestureDetector(this, new GestureDetector.SimpleOnGestureListener() { @Override public boolean onDown(MotionEvent e) { //返回false的话只能响应长摁事件 return true; } @Override public void onLongPress(MotionEvent e) { LogUtils.e("长嗯"); super.onLongPress(e); } @Override public boolean onScroll(MotionEvent e1, MotionEvent e2, float distanceX, float distanceY) { LogUtils.e("onScroll:"+distanceX +" "+distanceY); return super.onScroll(e1, e2, distanceX, distanceY); } }); mGesture.setOnDoubleTapListener(new GestureDetector.OnDoubleTapListener() { @Override public boolean onSingleTapConfirmed(MotionEvent e) { LogUtils.e("单击"); return true; } @Override public boolean onDoubleTap(MotionEvent e) { LogUtils.e("双击"); return true; } @Override public boolean onDoubleTapEvent(MotionEvent e) { return false; } }); } return mGesture.onTouchEvent(event); }
0 0
- VideoView的事件监听
- 在videoview中增加点击监听事件
- 监听VideoView的暂停和播发
- VideoView 开始暂停监听
- android videoView播放视频,对播放结束的监听方法
- [Servlet]事件监听,ServletContext的事件监听
- [Servlet]事件监听,ServletContext的事件监听
- JTree的事件监听
- JTabbedPane的事件监听
- combobox的监听事件
- Hibernate的事件监听
- EditText的监听事件
- UIMenuController的事件监听
- 监听事件的使用
- java的事件监听
- 监听事件的创建
- 安卓下的事件监听
- RecyclerView的事件监听
- Scheme
- 结构化思维
- TensorFlow学习笔记之二——安装和运行
- java文件操作
- $("linkage").jqzoom({options})图片放大插件
- VideoView的事件监听
- YY4-带人的技术(第五章)笔记-__XwD__-V1
- [C++]封装排序二叉树&随机数生成(c++11)
- MD5加密的使用
- 关于Android studio .9图的问题
- 设计模式详解(总纲)
- YY4-带人的技术(第六章)笔记-__XwD__-V1
- 实习日志-mysql-涉及多表的条件查询
- ‘inet_pton’ was not declared in this scope