Unity EventSystem的一些理解和使用

本文详细介绍了Unity的EventSystem组件,其在UI交互中的关键作用,包括获取实例、属性设置、事件判断和自定义事件触发。通过示例展示了如何处理点击、拖动和自定义事件。

Unity的EventSystem是用于处理用户输入和交互的系统。它是Unity UI系统的核心组件之一,可以用于捕捉和分发各种事件,例如点击、拖拽、按键、射线等。

常用的属性和方法有以下这些:

属性:

  • current: 获取当前的EventSystem实例。
  • sendNavigationEvents: 一个布尔值,表示是否发送导航事件。
  • pixelDragThreshold: 拖动的像素阈值。
  • currentInputModule: 获取当前激活的InputModule实例。

方法: 

  • IsPointerOverGameObject(int pointerId): 检查指定的指针事件是否发生在UI元素上。
  • SetSelectedGameObject(GameObject selected): 设置当前选中的游戏对象,默认使用PointerInputModule来处理选中事件。
  • SetSelectedGameObject(GameObject selected, BaseEventData pointer): 设置当前选中的游戏对象,并传递BaseEventData参数。
  • Raycast(PointerEventData eventData, List<RaycastResult> resultAppendList): 执行射线检测并返回与射线相交的最上层的UI元素。

常见用法:

1、 获取当前点击的UI元素:

EventSystem eventSystem = EventSystem.current;
GameObject selectedObject = eventSystem.cur
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

程序猿游也

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值