using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.EventSystems; using UnityEngine.UI; public class yaogan : ScrollRect { //继承滑块类 private float r;//能移动的距离 private Vector2 a;//当前位置 public Vector2 b;//相对于父对相 红色摇杆的座标 // Use this for initialization void Start () { r = (transform as RectTransform).sizeDelta.x * 0.5f;//能移动的距离是摇杆宽的一半 } public override void OnDrag(PointerEventData eventData)//override是可以重写继承类的函数 { base.OnDrag(eventData); //父对象的拖拽事件 ,父对象是指ScrollRect 类,这里的效果是拖拽后松开就会回到原位置 a = content.anchoredPosition; //保存当前位置相对于锚点的距离 if (r < a.magnitude) //判断摇杆的位置是感觉大于半径 { // 设置摇杆最远的位置 a = a.normalized * r; SetContentAnchoredPosition(a); } } // Update is called once per frame void Update () { b = content.localPosition;//获取摇杆相对于父物体的坐标,可以在其它脚本中调用控制其它物体移动 } }
摇杆
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
推荐阅读更多精彩内容
- 一.EasyTouch 资源结构 EasyTouchBundle [插件的根目录] |—EasyTouch [插件...