Android工具之实现上下滑动屏幕控制音量,同时绑定物理键
来源:互联网 发布:tp路由器访客网络设置 编辑:程序博客网 时间:2024/06/06 09:45
private double startY;private double touchRange;@Overridepublic boolean onTouchEvent(MotionEvent event) { detector.onTouchEvent(event); switch(event.getAction()){ case MotionEvent.ACTION_DOWN: startY = event.getY(); touchRange = Math.min(screenHeight,screenWidth); handler.removeMessages(HIDE_MEDIA_CONTROL); break; case MotionEvent.ACTION_MOVE: //handler.removeMessages(HIDE_MEDIA_CONTROL);//不要在这里移除,因为move会被调用很多次 double endY = event.getY(); double disY = startY-endY; //改变音量 = (移动高度/屏幕高度)*总音量; int delta = (int) Math.floor((disY/touchRange)*maxVolume); //最终声音 = 原来声音+改变音量 if(delta!=0){ isMute = false; currentVolume =Math.min(maxVolume,Math.max(0,currentVolume+delta)); updateVolume(currentVolume,isMute); } //startY = event.getY();//不要加这句,不然对距离变化不敏感 break; case MotionEvent.ACTION_UP: handler.sendEmptyMessageDelayed(HIDE_MEDIA_CONTROL,3000); break; } return super.onTouchEvent(event);}
/**绑定音量调节物理键*/
public boolean onKeyDown(int keyCode, KeyEvent event) { if(keyCode==KeyEvent.KEYCODE_VOLUME_DOWN){ currentVolume--; updateVolume(currentVolume,false); return true;//返回true表示消费行为,不再调起系统音量显示 }else if(keyCode==KeyEvent.KEYCODE_VOLUME_UP){ currentVolume++; updateVolume(currentVolume,false); return true;//可以不移除再重发控制面板的消息 } return super.onKeyDown(keyCode, event);}
private void updateVolume(int progress,boolean isMute) { if(isMute){ seekbarVoice.setProgress(0); audioManager.setStreamVolume(AudioManager.STREAM_MUSIC,0,0);//最后一项flag为1调用系统音量控制,0则不出现 }else{ currentVolume = progress; seekbarVoice.setProgress(currentVolume); audioManager.setStreamVolume(AudioManager.STREAM_MUSIC,currentVolume,0);//最后一项flag为1调用系统音量控制,0则不出现 }}
阅读全文
0 0
- Android工具之实现上下滑动屏幕控制音量,同时绑定物理键
- android监听音量上下键调节音量
- android实现上下滑动
- 【Android】Android实现视频播放的时候滑动屏幕调节亮度和音量
- Android实现上下滑动效果
- Android实现上下滑动效果
- GestureDetector学习之左右滑动,上下滑动屏幕切换页面
- Android上下菜单双向滑动实现
- Android实现上下滑动隐藏/显示工具栏
- Android之禁止GridView上下滑动
- Android之禁止GridView上下滑动
- Android视频播放器屏幕左侧边随手指上下滑动亮度调节变暗变亮原理实现
- Android视频播放器屏幕左侧边随手指上下滑动亮度调节变暗变亮原理实现
- Android视频播放器屏幕左侧边随手指上下滑动亮度调节变暗变亮原理实现
- Android视频播放器屏幕左侧边随手指上下滑动亮度调节变暗变亮原理实现
- Android 自定义View 实现手势监听,左右滑动,上下滑动
- iOS巅峰之UIScrollView滑动的左右上下位置控制
- 监听音量上下键调节音量
- LeetCode||61. Rotate List
- Golang技巧合集
- java把文件压缩成zip文件
- 对智能手表的功能买点认知介绍
- This app has been built with an incorrect configuration. Please configure your build for VectorDrawa
- Android工具之实现上下滑动屏幕控制音量,同时绑定物理键
- 形态学图像处理
- vue说明文档
- 【Error】 MethodNotAllowedHttpException
- Kafka的高级消费者与低级消费者
- android studio 导入外部库文件,以及将项目中module变成library引用依赖
- iOS Provisioning Profile(Certificate)与Code Signing详解
- 由React Router引起的组件重复渲染谈Route的使用姿势
- javaweb实现简单网上商城系统