Unity UGUI实现Button按钮长按状态的判断
代码:
using UnityEngine.EventSystems;
using System.Collections;
/// <summary>
/// 脚本位置:UGUI按钮组件身上
/// 脚本功能:实现按钮长按状态的判断
/// </summary> // 继承:按下,抬起和离开的三个接口
public class OnButtonPressed :MonoBehaviour,IPointerDownHandler,IPointerUpHandler,IPointerExitHandler
{
// 延迟时间
private float delay = 0.2f; // 按钮是否是按下状态
private bool isDown = false; // 按钮最后一次是被按住状态时候的时间
private float lastIsDownTime; void Update ()
{
// 如果按钮是被按下状态
if (isDown) {
// 当前时间 - 按钮最后一次被按下的时间 > 延迟时间0.2秒
if (Time.time - lastIsDownTime > delay) {
// 触发长按方法
Debug.Log("长按");
// 记录按钮最后一次被按下的时间
lastIsDownTime = Time.time;
}
}
} // 当按钮被按下后系统自动调用此方法
public void OnPointerDown (PointerEventData eventData)
{
isDown = true;
lastIsDownTime = Time.time;
} // 当按钮抬起的时候自动调用此方法
public void OnPointerUp (PointerEventData eventData)
{
isDown = false;
} // 当鼠标从按钮上离开的时候自动调用此方法
public void OnPointerExit (PointerEventData eventData)
{
isDown = false;
}
}
Unity UGUI实现Button按钮长按状态的判断的更多相关文章
- Unity UGUI之Button
创建Button后,会出现一个Image组件和一个Button组件,以及Button子节点Text(可以删除不影响功能) 其中Image的Image Type中有四个选项--Simple.Sliced ...
- Android Button 按钮 设置 各种状态 图片 颜色
有2个方法可以实现,一种是用 选择器 定义每种状态的图片 selec.xml <?xml version="1.0" encoding="utf-8"?& ...
- Unity UGUI基础之Button
UGUI Button,可以说是真正的使用最广泛.功能最全面.几乎涵盖任何模块无所不用无所不能的组件,掌握了它的灵巧使用,你就几乎掌握了大半个UGUI! 一.Button组件: Interactabl ...
- Unity UGUI按钮添加点击事件
1. 可视化创建及事件绑定 # 1 : 通过 Hierarchy 面板创建 UI > Button. 2 : 创建一个脚本 TestClick.cs, 定义了一个 Click 的 public ...
- Bootstrap 按钮(Button)插件加载状态
通过按钮(Button)插件,您可以添加进一些交互.比如控制按钮的状态.或者为其它组件(工具栏)创建按钮组. 加载状态 如需向按钮添加加载状态,只需要简单地向 button 元素添加 data-loa ...
- Unity中Button按钮的触发监听事件
第一种方式:需要把自己添加的Button按钮属性(Inspector)中的(Button)onclick添加方法. public void BtnCreteClick() { Debug.Log(&q ...
- Unity UGUI
超详细的基础教程传送门:(持续更新中) Unity UGUI之Canvas&EventSystem:http://blog.csdn.net/qq992817263/article/detai ...
- Android 按钮长按下去重复执行某个动作,放开后停止执行动作
Android开发中,常遇到一种需求,即按钮长按下去重复执行某个动作,放开后停止执行动作.网上找了许多代码,都没有适合的,于是自己动手写了一个. 基本思路是:首先设置一个标识变量,用于标识是否处于按下 ...
- QT经验(一)——按钮长按事件分析
引言 最近在做qt项目,需要对button按钮添加一个长按事件(比如点击按钮,开始运动.松开按钮,运动停止).查了些许资料,(差点误把QPushButton的press信号和长按事件混淆)在此记录一下 ...
随机推荐
- tomcat启动报错,找不到相应的 queue,从而引发内存泄漏
tomcat启动报错,无法创建 bean listenerStatusChangeDealHandler, no queue 'STOCK.NOTIFY_CHANGE.INTER.CACHE.QUEU ...
- sql server 操作xml例子
sql server 操作xml例子 /* sql xml 入门: --by jinjazz --http://blog.csdn.net/jinjazz 1.xml: 能认识元素.属性和值 2.xp ...
- ‘close’ was not declared in this scope
‘close’ was not declared in this scope ‘read’ was not declared in this scope ‘sysconf’ was not decla ...
- [MSP430]入门之中的一个 总体认识
这是由TI公司推出的一款比較单片机, 相对stm32来说简单些, 由于它是16位的, 所以我们在学习中可能也会像51一样, 直接操纵寄存器. TI设计这款单片机的初衷是, 让它用于低功耗的嵌入式设 ...
- 我的项目7 js 实现歌词同步(额,小小的效果)
在项目中须要做一个播放器,还要实现歌词同步的效果,就跟如今搜狗音乐的歌词同步差点儿相同,在网上查了一些关于这方面的.整理了一下,在这里,其有用这种方法能够吗? <!DOCTYPE html> ...
- Tomcat 关闭时报错
最近tomcat走普通的关闭方式无法正常关闭,会报一些Error,用的是Tomcat7,据说是Tomcat7在关闭的时候加了一些检查线程泄漏内存泄露的东西 总结起来,在我项目中有这么几个原因会导致关闭 ...
- 火狐浏览器(firefox)中js要注意的问题
1.出现错误调用error方法或者ajax请求了多次,那么极有可能是异步请求的原因. 添加 async : false , -> async. 默认是 true,即为异步方式,$.aja ...
- GPU 编程入门到精通(四)之 GPU 程序优化
博主因为工作其中的须要,開始学习 GPU 上面的编程,主要涉及到的是基于 GPU 的深度学习方面的知识,鉴于之前没有接触过 GPU 编程.因此在这里特地学习一下 GPU 上面的编程.有志同道合的小伙伴 ...
- unity, Root Motion
(引自:http://tieba.baidu.com/p/4323644080) 然后详细看了下这个文档:http://docs.unity3d.com/Manual/RootMotion.html ...
- Android - 资源(resource)转换为String
资源(resource)转换为String 本文地址: http://blog.csdn.net/caroline_wendy Android建议资源的动态绑定, 即把string写入资源内, 然后运 ...