unity 手指控制UI移动和放大缩小
直接将下面的update方法放在mono类下即可。
指定一下所要控制的物体。
有问题添加 QQ群 207019099
void Update(){Ray ray = new Ray();ray = Camera.main.ScreenPointToRay(Input.GetTouch(0).position);if (Input.GetTouch(0).phase == TouchPhase.Moved || Input.GetTouch(0).phase == TouchPhase.Stationary){Vector2 touchDeltaPosition = Input.GetTouch(0).deltaPosition;transform.Translate(touchDeltaPosition.x * Time.deltaTime *0.03f, touchDeltaPosition.y * Time.deltaTime * 0.03f, 0);}if (Input.touchCount > 1){//当第二根手指按下的时候if (Input.GetTouch(1).phase == TouchPhase.Began){isTwoTouch = true;//获取第一根手指的位置firstTouch = Input.touches[0].position;//获取第二根手指的位置secondTouch = Input.touches[1].position;lastDistance = Vector2.Distance(firstTouch, secondTouch);}//如果有两根手指按下if (isTwoTouch){//每一帧都得到两个手指的坐标以及距离firstTouch = Input.touches[0].position;secondTouch = Input.touches[1].position;twoTouchDistance = Vector2.Distance(firstTouch, secondTouch);//当前图片的缩放Vector3 curImageScale = new Vector3(image.localScale.x, image.localScale.y, 1);//两根手指上一帧和这帧之间的距离差//因为100个像素代表单位1,把距离差除以100看缩放几倍float changeScaleDistance = (twoTouchDistance - lastDistance) / 100;//因为缩放 Scale 是一个Vector3,所以这个代表缩放的Vector3的值就是缩放的倍数Vector3 changeScale = new Vector3(changeScaleDistance, changeScaleDistance, 0);//图片的缩放等于当前的缩放加上 修改的缩放image.localScale = curImageScale + changeScale;//控制缩放级别image.localScale = new Vector3(Mathf.Clamp(image.localScale.x, 0.5f, 10f), Mathf.Clamp(image.localScale.y, 0.5f, 10f), 1);//这一帧结束后,当前的距离就会变成上一帧的距离了lastDistance = twoTouchDistance;}//当第二根手指结束时(抬起)if (Input.GetTouch(1).phase == TouchPhase.Ended){isTwoTouch = false;firstTouch = Vector3.zero;secondTouch = Vector3.zero;}}
unity 手指控制UI移动和放大缩小相关推荐
- html文字自动放大缩小单位,如何css控制字体按百分比放大缩小
字体百分比放大缩小是可以的,不同单位不同设置情况 1. "Ems"(em):"em"是一个可伸缩的单位, 用于web文档媒体展示.一个em等于当前的字体大小,例 ...
- Unity 在zSpace上使用鼠标控制相机旋转和鼠标指引式放大缩小,在触屏上手势位置为中心放大缩小
在zSpace上使用鼠标控制相机旋转和鼠标指引式放大缩小,在触屏上手势位置为中心放大缩小 鼠标和触屏的操作 下面展示一些 内联代码片. using System; using System.Colle ...
- Unity中常用的单例模式、对象池的脚本模板,连按退出和滑动翻页或放大缩小的功能实现,以及属性在代码中的灵活使用
1.单例模式的脚本模板: Unity中针对一些常用的manager可以使用单例模式,用于统一的功能管理: //普通单例,不需要继承MonoBehavior,不用挂载在GameObject上 publi ...
- Android 自定义地图控件 可手指拉伸放大缩小拖动,指定坐标加点加线
之前公司 项目有用到 gps定位 ,以及 工厂地图 布置 点 ,但是 无法使用百度地图之类的 第三方地图SDK ,只给一个工厂平面图,就要实现gps定位,一直 地图上布点. gps 坐标转换到 图片上 ...
- Iwfu-安卓Gesture手势(2)-实现多点触控控制图片的放大缩小。
上一篇介绍安卓Gesture手势初步使用,这一篇用Gesture来实现多点触控达到控制图片放大缩小. 上文中写道,进行手势监听的Activity要实现对应的OnGestureListener接口,重写 ...
- Unity触摸屏幕 拖拽物体 旋转物体 放大缩小物体 单击 双击 长按
Unity触摸屏幕 拖拽物体 旋转物体 放大缩小物体 单击 双击 长按 拖拽物体 using System.Collections; using System.Collections.Generic; ...
- pycharm 用鼠标滑轮控制代码放大缩小的设置
pycharm 用鼠标滑轮控制代码放大缩小的设置 1.首先点击file选择settings 2.点击settings进入界面选择keymap 3.输入dec点击第一个 4.鼠标右击点击第二个 5. 按 ...
- html如何控制图片自动放缩,如何用js控制图片放大缩小
js控制图片放大缩小的效果,可以通过JavaScript的width和height属性来实现.其属性可以实现按比例放大和缩小图像尺寸的功能. 在前面的文章中,也为大家介绍了JS获取图片当前宽高和JS获 ...
- iPhone模拟器里面模拟两个手指做放大缩小的手势
artgolf 2011-03-08 09:22 请问iPhone模拟器里面能模拟两个手指做放大缩小的手势吗? 想做一个视频演示,需要两个手指做放大缩小的手势,请问直接在模拟器中能做吗?难道还要买个真 ...
最新文章
- Android 依赖注入: Dagger 2 实例解说(一)
- python.exe在哪个文件_pythonexe文件中的images文件夹放在哪里?
- .NET的一点历史故事:招兵买马和聚义山林
- 什么是协议转换器?协议转换器的定义
- 对话阿里云叔同:释放云价值,让容器成为“普适”技术
- 编辑器之神Vim总结
- OpenCV笔记(十八)——使用霍夫变换检测圆圈
- decode 大于比较 小于_「oracle decode」【ORACLE】Oracle提高篇之DECODE - seo实验室
- Mybatis安装配置使用
- 我是如何把30000行代码重构成15行
- php把buffer转化为图片_干货:如何提升转化率?5个优化转化率的tips
- PHP将swf转为gif,swf怎么转换成gif 怎么把swf转换成gif
- 【周五松土】私家萝卜与坑
- STM32 DMA2D技术
- 2021-1-30最短路入门
- 高德地图PC版国内首发室内地图
- win10声音显示红叉问题解决
- upupoo视频使用Java代码下载
- 最大公约数几种算法分析
- Scratch3.0创意编程(基础篇):第1课 Scratch画图形