Unity3D UGUI按钮长按事件
2016-07-06 15:25
405 查看
**
原理:
处理 Unity 的点击事件
在鼠标 按下的状态、松开、以及鼠标离开的状态来进行状态控制。
代码:
使用方法:
把脚本挂在 Button 上面 (当然其它控件也可以) ,然后设置 长按的回调函数 以及 调用间隔。
长按按钮,就会按照设定的间隔事件 ,不停得调用 指定的 OnLongPress 函数。
例子下载:
http://download.csdn.net/detail/cp790621656/8794181
转载
**原理:
处理 Unity 的点击事件
IPointerDownHandler IPointerUpHandler IPointerExitHandler
在鼠标 按下的状态、松开、以及鼠标离开的状态来进行状态控制。
代码:
using UnityEngine; using UnityEngine.Events; using UnityEngine.EventSystems; using System.Collections; public class RepeatPressEventTrigger :MonoBehaviour,IPointerDownHandler,IPointerUpHandler,IPointerExitHandler { public float interval=0.1f; [SerializeField] UnityEvent m_OnLongpress=new UnityEvent(); private bool isPointDown=false; private float lastInvokeTime; // Use this for initialization void Start () { } // Update is called once per frame void Update () { if(isPointDown) { if(Time.time-lastInvokeTime>interval) { //触发点击; m_OnLongpress.Invoke(); lastInvokeTime=Time.time; } } } public void OnPointerDown (PointerEventData eventData) { m_OnLongpress.Invoke(); isPointDown = true; lastInvokeTime = Time.time; } public void OnPointerUp (PointerEventData eventData) { isPointDown = false; } public void OnPointerExit (PointerEventData eventData) { isPointDown = false; } }
使用方法:
把脚本挂在 Button 上面 (当然其它控件也可以) ,然后设置 长按的回调函数 以及 调用间隔。
长按按钮,就会按照设定的间隔事件 ,不停得调用 指定的 OnLongPress 函数。
例子下载:
http://download.csdn.net/detail/cp790621656/8794181
相关文章推荐
- Kinect结合Unity3D引擎开发体感游戏(一)
- Unity3D中脚本的执行顺序和编译顺序
- Unity3D动态对象优化代码分享
- Unity3D获取当前键盘按键及Unity3D鼠标、键盘的基本操作
- Unity3d获取系统时间
- unity3d发布apk在android虚拟机中运行的详细步骤(unity3d导出android apk)
- Unity3D游戏引擎实现在Android中打开WebView的实例
- unity实现多点触控代码
- 在Unity中实现动画的正反播放代码
- Unity UGUI教程之实现滑页效果
- unity实现摄像头跟随
- unity3d调用手机或电脑摄像头
- Unity3d发布IOS9应用时出现中文乱码的解决方法
- 分享一个开源的网络游戏服务器架构—HouHai
- Unity3D插件详细评测及教学下载
- Unity3D上路_01-2D太空射击游戏
- Unity3D上路_02-第一视角射击游戏