Unity入门操作_UGUI_事件_030
2017-08-30 20:39
411 查看
Unity3D的uGUI系统的将UI可能触发的事件分为12个类型,即EventTriggerType枚举的12个值。
先以PointerClick为例。这个是用于某点点击事件。其他事件都可以根据相同的办法调用。
实现事件主要有3种方式:
方式一:继承基础接口实现
步骤一:创建ClickEvent脚本。继承MonoBehaviour和IPointerClickHandler
using UnityEngine;
using System.Collections;
using UnityEngine.EventSystems;
public class Change : MonoBehaviour,IPointerEnterHandler,IPointerExitHandler{
}
效果如下:
步骤二:实现public void OnPointerClick(PointerEventData eventData)方法:
步骤三:创建一个名为Panel_IPointer的UI对象。并且将ClickEventt脚本附加到对象上。
步骤四:启动,并点击Panel_IPointer对象。在Console输出如下:
方式二:Unity3D编辑器操作设置实现
步骤一:创建一个C#脚本。在脚本中添加一个public方法。
步骤二:创建一个命名为Empty的UI对象,用于接收和响应点击事件。创建一个名为Panel的UI对象,用于触发点击事件。
步骤三:Panel对象添加EventTrigger组件,” Add New” -> 选择” PointerClick”。将Empty对象拖拽到触发者位置。然后点击”No Function”选择我们写在Test脚本中的OnTestClick事件。
方式三:程序动态设置实现
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.Events;
using UnityEngine.EventSystems;
public class ClickTest : MonoBehaviour {
// Use this for initialization
void Start ()
{
var trigger = transform.gameObject.GetComponent();
if (trigger == null)
trigger = transform.gameObject.AddComponent();
// 实例化delegates
trigger.triggers = new List
先以PointerClick为例。这个是用于某点点击事件。其他事件都可以根据相同的办法调用。
实现事件主要有3种方式:
方式一:继承基础接口实现
步骤一:创建ClickEvent脚本。继承MonoBehaviour和IPointerClickHandler
using UnityEngine;
using System.Collections;
using UnityEngine.EventSystems;
public class Change : MonoBehaviour,IPointerEnterHandler,IPointerExitHandler{
public void OnPointerEnter(PointerEventData eventData) { //进入事件 transform.localScale= new Vector3(2,2,2); } public void OnPointerExit(PointerEventData eventData) { //退出事件 transform.localScale = new Vector3(1,1,1); } // Use this for initialization void Start () { } // Update is called once per frame void Update () { }
}
效果如下:
步骤二:实现public void OnPointerClick(PointerEventData eventData)方法:
步骤三:创建一个名为Panel_IPointer的UI对象。并且将ClickEventt脚本附加到对象上。
步骤四:启动,并点击Panel_IPointer对象。在Console输出如下:
方式二:Unity3D编辑器操作设置实现
步骤一:创建一个C#脚本。在脚本中添加一个public方法。
步骤二:创建一个命名为Empty的UI对象,用于接收和响应点击事件。创建一个名为Panel的UI对象,用于触发点击事件。
步骤三:Panel对象添加EventTrigger组件,” Add New” -> 选择” PointerClick”。将Empty对象拖拽到触发者位置。然后点击”No Function”选择我们写在Test脚本中的OnTestClick事件。
方式三:程序动态设置实现
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.Events;
using UnityEngine.EventSystems;
public class ClickTest : MonoBehaviour {
// Use this for initialization
void Start ()
{
var trigger = transform.gameObject.GetComponent();
if (trigger == null)
trigger = transform.gameObject.AddComponent();
// 实例化delegates
trigger.triggers = new List
相关文章推荐
- Unity入门操作_ UGUI_ 基础组件_024
- Unity入门操作_UGUI_Slider_028
- Unity入门操作_UGUI_ScrollBar_029
- Unity入门操作_UGUI_Button理论_025
- Unity入门操作_UGUI_InputFie_026
- Unity Ugui EventListen (事件侦听)
- unity5 动画系统Mecanim事件快速入门 区分animation和animator不再混淆
- Unity入门操作_视频_036
- Unity UGUI 原理篇(四):Event System Manager 事件與觸發
- Android 编程之入门开发文件夹管理器开发文件事件操作-2
- Unity入门操作_混合树_033
- SQL Server 扩展事件(Extented Events)从入门到进阶(3)——通过界面操作Extented Event
- 【 D3.js 入门系列 --- 8 】 对话操作(事件)
- unity初级入门:如何找到unity中支持的所有事件
- Unity入门操作_Application类与切换场景 _010
- Unity入门操作_ 角色控制器_015
- SQL Server 扩展事件(Extented Events)从入门到进阶(3)——通过界面操作Extented Event
- Unity_UGUI的事件系统
- unity-ugui的几种事件
- 【笨木头Unity】入门之旅005:正常人都要掌握的操作