当前位置: 首页 > news >正文

wordpress仿站标签宁波北京网站建设

wordpress仿站标签,宁波北京网站建设,asp.net网站建设项目实战资料,个人网站建设与实现请实现一个自定义 View 的核心代码#xff0c;核心要求可以响应如下事件#xff1a; // - 要求自定义 View 可以播放一段视频 / - 在 view 左侧区域上下滑动#xff0c;可以提高减少音量 / / - 在 view 右侧区域上下滑动可以提高减少屏幕亮度 // - 在 view 左右滑动可以…请实现一个自定义 View 的核心代码核心要求可以响应如下事件 // - 要求自定义 View 可以播放一段视频 / - 在 view 左侧区域上下滑动可以提高减少音量 / / - 在 view 右侧区域上下滑动可以提高减少屏幕亮度 // - 在 view 左右滑动可以快进/快退播放 // - 在 view 区域点击屏幕可以暂停/继续播放 使用 VideoView 实现自定义 View public class CustomVideoView extends FrameLayout {private VideoView videoView;private GestureDetector gestureDetector;private float initialTouchX, initialTouchY;private int screenWidth, screenHeight;private AudioManager audioManager;private WindowManager.LayoutParams layoutParams;private float maxVolume;public CustomVideoView(Context context) {super(context);init(context);}public CustomVideoView(Context context, AttributeSet attrs) {super(context, attrs);init(context);}public CustomVideoView(Context context, AttributeSet attrs, int defStyleAttr) {super(context, attrs, defStyleAttr);init(context);}private void init(Context context) {// 初始化 VideoViewvideoView new VideoView(context);addView(videoView, new LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.MATCH_PARENT));// 获取屏幕宽高WindowManager wm (WindowManager) context.getSystemService(Context.WINDOW_SERVICE);Display display wm.getDefaultDisplay();Point size new Point();display.getSize(size);screenWidth size.x;screenHeight size.y;// 初始化音频管理器audioManager (AudioManager) context.getSystemService(Context.AUDIO_SERVICE);maxVolume audioManager.getStreamMaxVolume(AudioManager.STREAM_MUSIC);// 获取当前窗口参数以调整亮度layoutParams ((Activity) context).getWindow().getAttributes();// 初始化手势检测器gestureDetector new GestureDetector(context, new GestureDetector.SimpleOnGestureListener() {Overridepublic boolean onSingleTapConfirmed(MotionEvent e) {if (videoView.isPlaying()) {videoView.pause();} else {videoView.start();}return true;}Overridepublic boolean onScroll(MotionEvent e1, MotionEvent e2, float distanceX, float distanceY) {float deltaX e2.getX() - initialTouchX;float deltaY e2.getY() - initialTouchY;if (Math.abs(deltaX) Math.abs(deltaY)) {// 左右滑动快进/快退if (deltaX 0) {// 快进videoView.seekTo(videoView.getCurrentPosition() 10000);} else {// 快退videoView.seekTo(videoView.getCurrentPosition() - 10000);}} else {if (initialTouchX screenWidth / 2) {// 左侧区域上下滑动调整音量if (deltaY 0) {// 降低音量audioManager.adjustStreamVolume(AudioManager.STREAM_MUSIC, AudioManager.ADJUST_LOWER, 0);} else {// 提高音量audioManager.adjustStreamVolume(AudioManager.STREAM_MUSIC, AudioManager.ADJUST_RAISE, 0);}} else {// 右侧区域上下滑动调整亮度if (deltaY 0) {// 降低亮度layoutParams.screenBrightness Math.max(layoutParams.screenBrightness - 0.1f, 0.1f);} else {// 提高亮度layoutParams.screenBrightness Math.min(layoutParams.screenBrightness 0.1f, 1.0f);}((Activity) getContext()).getWindow().setAttributes(layoutParams);}}return true;}});}Overridepublic boolean onTouchEvent(MotionEvent event) {initialTouchX event.getX();initialTouchY event.getY();return gestureDetector.onTouchEvent(event);}public void setVideoPath(String path) {videoView.setVideoPath(path);}public void start() {videoView.start();}public void pause() {videoView.pause();}public boolean isPlaying() {return videoView.isPlaying();}public void seekTo(int millis) {videoView.seekTo(millis);} }GestureDetector.SimpleOnGestureListener 是 GestureDetector 的一个内部类提供了各种手势检测回调方法。你可以通过继承 SimpleOnGestureListener 并重写它的方法来定制手势处理逻辑。下面是 SimpleOnGestureListener 内常用方法的详细说明及示例代码。 常用方法及说明 onSingleTapUp(MotionEvent e) 当用户轻轻点击屏幕后松开时调用。返回 true 表示该事件被处理。示例用途处理单击事件。 onLongPress(MotionEvent e) 当用户长按屏幕时调用。示例用途处理长按事件如显示上下文菜单。 onScroll(MotionEvent e1, MotionEvent e2, float distanceX, float distanceY) 当用户在屏幕上滑动时调用。参数 e1 表示滑动的起点e2 表示滑动的终点distanceX 和 distanceY 分别表示滑动的距离。示例用途处理滚动事件如滚动列表。 onFling(MotionEvent e1, MotionEvent e2, float velocityX, float velocityY) 当用户快速滑动并松开时调用。参数 e1 和 e2 表示滑动的起点和终点velocityX 和 velocityY 分别表示滑动的速度。示例用途处理快速滑动事件如切换页面。 onShowPress(MotionEvent e) 当用户按下屏幕但还未松开或拖动时调用。示例用途处理按压显示效果。 onDown(MotionEvent e) 当用户按下屏幕时调用。返回 true 表示该事件被处理。示例用途通常用来初始化一些状态。 onDoubleTap(MotionEvent e) 当用户双击屏幕时调用。示例用途处理双击事件如放大图片。 onDoubleTapEvent(MotionEvent e) 当双击手势发生的过程中按下、移动和抬起事件的任何一次调用。示例用途处理双击过程中的事件。 onSingleTapConfirmed(MotionEvent e) 当单击事件被确认时调用。示例用途与 onSingleTapUp 区分onSingleTapConfirmed 在确定不是双击时调用。
http://www.hkea.cn/news/14305803/

相关文章:

  • 网站引导页怎么做边个网站可以接模具做
  • 用什么网站做浏览器主页怎样快速建设网站模板
  • 北京市住房建设投资中心网站网站浏览图片怎么做
  • 开网站空间流量怎么选择wordpress 输入框
  • 六安网站自然排名优化价格做淘宝有哪些货源网站
  • 网站在阿里云备案流程推荐10网站
  • 怎么做网站推广林芝地区工作室logo设计
  • 淘宝客做网站链接康保网站制作
  • 河南郑州app建设网站建筑工人找活的平台app
  • 机关网站建设创新北京专业网站制作技术
  • 室内设计找工作网站天津企悦在线网站建设
  • 深圳专业商城网站制作网站建设首页包括什么
  • 所有网站名称大全网站建设开票应该开哪个行业
  • 自己做刷东西的网站wordpress 旋转预加载
  • 房产网站建设接单建网站的每年有费用
  • 长沙网站制作教程编程是学什么东西的
  • 汕头h5建站一个专门做试题的网站
  • 晋城市公共事业建设局网站如何建站网站
  • 个人信息网站建设的心得体会和县网站开发
  • 苏州企业网站制作多少钱做网站站怎么赚钱吗
  • 洛阳网站的优化网页游戏排行nvsheng
  • 企业门户网站的建设费用广州网站建设+致茂
  • 信息网站建设网站建设话语
  • 如何自己建公司网站自己做的网站邮箱更改密码程序为什么总出错
  • 佛山门户网站建设wordpress调用百度网盘视频
  • 玩具网站建设策划书国内网站建设的趋势是怎样的
  • 嘉兴南湖区建设局网站济南seo优化外包服务
  • 北京设计网站建设黑龙江网站备案
  • 怎么找网站站长下载百度免费
  • 做企业网站用什么框架云南做网站报价