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

晋江做网站模板设计网页制作策划路程

晋江做网站模板,设计网页制作策划路程,wordpress迁移空间插件,做电子商务网站 费用最近做项目#xff0c;做到了要让视频缩放的功能#xff0c;所以写了一个小DEMO#xff0c;进行双指手势的操作#xff0c;DEMO是使用TextView做测试#xff0c;实际使用监听放在TextureView也是正常运行。首先就是记录下触摸屏幕的手指数量#xff0c;一个手指触摸的时候…最近做项目做到了要让视频缩放的功能所以写了一个小DEMO进行双指手势的操作DEMO是使用TextView做测试实际使用监听放在TextureView也是正常运行。首先就是记录下触摸屏幕的手指数量一个手指触摸的时候进行移动操作两个手指触摸的时候进行缩放操作大于两个手指触摸的时候将不进行操作。缩放模式的时候主要是记录下第一次双指间距通过ACTION_MOVE回调得到的最新双指间距和第一次得到的双指间距对比通过setScaleX和setScaleY进行缩放的比例改变。而移动模式的时候需要注意到可移动的范围不能超过View的范围。通过setPivotX和setPivotY进行放大后的移动。代码分解如下1.记录触摸手指的个数(触摸数量的变化在onTouch方法)定义缩放最大和最小的比例。isCanTouch 就是在外部可以选择是否开启手势缩放。private boolean isCanTouch false;private int point_num 0;//当前触摸的点数public static final float SCALE_MAX 8.0f; //最大的缩放比例private static final float SCALE_MIN 1.0f;//最小缩放比例2.是否开启手势缩放public void setIsCanTouch(boolean canTouch) {isCanTouch canTouch;}3.计算两个手指之间的距离的方法。/*** 计算两个点的距离** param event* return*/private double spacing(MotionEvent event) {if (event.getPointerCount() 2) {float x event.getX(0) - event.getX(1);float y event.getY(0) - event.getY(1);return Math.sqrt(x * x y * y);} else {return 0;}}4.使用setScaleX和setScaleY进行缩放的比例改变。5.使用setPivotX和setPivotY进行放大后的移动。onTouch方法如下Overridepublic boolean onTouch(View v, MotionEvent event) {if (!isCanTouch) {return false;}switch (event.getAction() MotionEvent.ACTION_MASK) {case MotionEvent.ACTION_DOWN:point_num 1;downX event.getX();downY event.getY();break;case MotionEvent.ACTION_UP:point_num 0;downX 0;downY 0;break;case MotionEvent.ACTION_MOVE:if (point_num 1) {//只有一个手指的时候才有移动的操作float lessX (float) (downX - event.getX());float lessY (float) (downY - event.getY());moveX event.getX();moveY event.getY();moveRawX event.getRawX();moveRawY event.getRawY();setSelfPivot(lessX, lessY);//setPivot(getPivotX() lessX, getPivotY() lessY);} else if (point_num 2) {//只有2个手指的时候才有放大缩小的操作moveDist spacing(event);double space moveDist - oldDist;float scale (float) (getScaleX() space / getWidth());if (scale SCALE_MIN scale SCALE_MAX) {setScale(scale);} else if (scale SCALE_MIN) {setScale(SCALE_MIN);}}break;case MotionEvent.ACTION_POINTER_DOWN:oldDist spacing(event);//两点按下时的距离point_num 1;break;case MotionEvent.ACTION_POINTER_UP:point_num - 1;break;}return true;}6.移动的方法设置了边界值不让View移动到View的范围外。/*** 触摸使用的移动事件** param lessX* param lessY*/private void setSelfPivot(float lessX, float lessY) {float setPivotX 0;float setPivotY 0;setPivotX getPivotX() lessX;setPivotY getPivotY() lessY;Log.e(lawwingLog, setPivotX: setPivotX setPivotY: setPivotY getWidth: getWidth() getHeight: getHeight());if (setPivotX 0 setPivotY 0) {setPivotX 0;setPivotY 0;} else if (setPivotX 0 setPivotY 0) {setPivotY 0;if (setPivotX getWidth()) {setPivotX getWidth();}} else if (setPivotX 0 setPivotY 0) {setPivotX 0;if (setPivotY getHeight()) {setPivotY getHeight();}} else {if (setPivotX getWidth()) {setPivotX getWidth();}if (setPivotY getHeight()) {setPivotY getHeight();}}setPivot(setPivotX, setPivotY);}
http://www.yutouwan.com/news/156536/

相关文章:

  • 在国内的服务器上建设国外网站注册商标需要多长时间
  • 网站做的最好的网站有哪些外贸crm客户管理软件
  • 免费商用的网站模板无锡网站营销公司哪家好
  • 注册网站模板深圳自适应网站的公司
  • 苏州创元投资集团网站关于青岛的网页设计
  • 监控做斗鱼直播网站商业网站教程
  • 门户网站怎么建设电子商务网站建设与管理第四章答案
  • 北京检查站优化wordpress进管理员密码
  • 烟台微网站建设吉林省建设厅监理协会网站
  • 如何防止网站被采集免费服务器主机
  • 资源类网站怎么做应用软件开发专业
  • 官方网站开发方案推荐昆明做网站建设
  • 做worksheet的网站导航网站移动端流量占比
  • 做系统那个网站好做创新方法工作网站
  • 洛阳 网站建设北京企迪网站建设公司
  • 模版网站做支付功能西安网站建设 美科动
  • 网站建设价格明细表和网站预算施工单位招聘信息
  • 旅游网站wordpressh5框架做网站
  • 渭南哪家公司可以做网站在线花钱做网站
  • 前程无忧网广州网站建设类岗位wordpress时间表插件
  • 苏州著名网站建设wordpress视频教程 百度网盘
  • 东莞微客巴巴做网站j2ee博客网站开发
  • 东莞市住建局官网网站免费打开网站
  • 婚纱手机网站做网站的前端技术
  • 关于网站开发的学校南阳千牛网站建设
  • 全县网站建设管理工作会议召开iis服务器网站301重定向怎么做
  • 证书兼职的人才网站网络规划设计师考试内容
  • 制作关于灯的网站网站排名下降的原因
  • 长沙做网站 必看 磐石网络佛山关键词搜索排名
  • 制作企业网站素材视频网站自做书本