Unity3D之UI按键绑定事件(四)
来源:互联网 发布:天刀无缺染色数据 编辑:程序博客网 时间:2024/06/06 10:55
四、通过unity系统自带的事件系统实现
第一步:通过Hierarchy面板创建button
第二步:创建一个名为EventHandler的脚本,代码如下
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI ;
using UnityEngine.EventSystems ;
[RequireComponent (typeof (UnityEngine .EventSystems.EventTrigger ))]
public class EventHandler : MonoBehaviour {
Button btn = this.GetComponent<Button > ();
UnityEngine.EventSystems.EventTrigger trigger=btn.gameObject.GetComponent<UnityEngine.EventSystems.EventTrigger> ();
EventTrigger.Entry entry = new EventTrigger.Entry ();
entry.eventID = EventTriggerType.PointerClick;
entry.callback = new EventTrigger.TriggerEvent ();
entry.callback.AddListener (OnClick);
trigger.triggers.Add (entry );
}//Start ()_end
void OnClick(BaseEventData pointData)
{
Debug.Log ("Button Clicked");
}//OnClick()_end
}
第三步,绑定EventHandler脚本到Button上
然后运行点击按钮就能看到运行的结果了。
如果我们想在UI中实现MouseIn怎么办,很简单我们只需要修改下EventTriggerType.PointerClick事件类型改为EventTriggerType.PointerEnter,同理要监听MouseOut事件只需要修改为EventTriggerType.PointerExit
新的实现代码如下
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI ;
using UnityEngine.EventSystems ;
[RequireComponent (typeof (UnityEngine .EventSystems.EventTrigger ))]
public class EventHandler : MonoBehaviour {
Button btn = this.GetComponent<Button > ();
UnityEngine.EventSystems.EventTrigger trigger=btn.gameObject.GetComponent<UnityEngine.EventSystems.EventTrigger> ();
EventTrigger.Entry entry = new EventTrigger.Entry ();
//鼠标点击事件
//entry.eventID = EventTriggerType.PointerClick;
//鼠标滑出事件
/entry.eventID = EventTriggerType.PointerExit;
//鼠标进入事件
entry.eventID = EventTriggerType.PointerEnter;
entry.callback = new EventTrigger.TriggerEvent ();
entry.callback.AddListener (OnClick);
trigger.triggers.Add (entry );
}//Start ()_end
void OnClick(BaseEventData pointData)
{
Debug.Log ("Button Clicked");
}//OnClick()_end
}
第五种实现方式
- Unity3D之UI按键绑定事件(四)
- Unity3D之UI按键绑定事件(一)
- Unity3D之UI按键绑定事件(二)
- Unity3D之UI按键绑定事件(三)
- Unity3D之UI按键绑定事件(六)
- Unity3D之UI按键绑定事件(五)
- Unity3D之UI按键绑定事件案例(七)
- 【UGUI】Unity4.6 UI按钮绑定事件(四)
- Unity3D之组合按键
- div实现绑定按键事件
- Unity3D之将UI的点击事件渗透下去
- Unity3D研究院之将UI的点击事件渗透下去
- WPF之按键事件
- unity3d手柄按键事件回调
- unity3d之ui实践
- Unity3D之UI设计
- Android:开源框架xutils介绍之 ViewUtils(注解实现UI绑定和事件绑定)
- jQuery四种事件绑定
- HDU-6058 Kanade's sum
- 现代前端技术解析:前端项目与技术实践
- Java值传递(基本数据类型和引用数据类型)和虚拟机内存作用
- Python爬虫---处理HTTPS请求 SSL证书验证
- Redis源码解析3
- Unity3D之UI按键绑定事件(四)
- 【Kmp】Blue Jeans POJ
- 判断是否为AVL树~
- HDU 6058 枚举 Kanade's sum
- hdu 1428 漫步校园(搜索+记忆化搜索)
- uva188 Perfect Hash
- 一图读懂:Type-C的前生今世 众接口已哭晕
- CSDN自定义博客栏目实现搜索本站
- Python自然语言处理——nltk_data