unity动态添加 EventTrigger

本文涉及的产品
交互式建模 PAI-DSW,每月250计算时 3个月
模型在线服务 PAI-EAS,A10/V100等 500元 1个月
模型训练 PAI-DLC,100CU*H 3个月
简介: 动态添加 EventTrigger

前言:每日记录自己学习unity的心得和体会,小弟才疏学浅,如有错误的地方,欢迎大佬们指正,感谢~

代码添加    EventTrigger   方法

检测鼠标进入UI显示ui的名字非常好用


using System.Collections;

using System.Collections.Generic;

using UnityEngine;

using UnityEngine.Events;

using UnityEngine.EventSystems;

using UnityEngine.UI;

public class ChuFaWaite : MonoBehaviour {

   private Image imagee;

   private EventTrigger trigger;

   // Use this for initialization

   void Start()

   {

       imagee = this.GetComponent<Image>();

       if (!GetComponent<EventTrigger>())

       {

         trigger = gameObject.AddComponent<EventTrigger>();

       }

       else

       {

           trigger = gameObject.GetComponent<EventTrigger>();

       }

       UnityAction<BaseEventData> click = new UnityAction<BaseEventData>(MyClick);

       EventTrigger.Entry myclick = new EventTrigger.Entry();

       myclick.eventID = EventTriggerType.PointerEnter;

       myclick.callback.AddListener(click);

       trigger.triggers.Add(myclick);

       UnityAction<BaseEventData> _click = new UnityAction<BaseEventData>(MyClick_);

       EventTrigger.Entry myclick_ = new EventTrigger.Entry();

       myclick_.eventID = EventTriggerType.PointerExit;

       myclick_.callback.AddListener(_click);

       trigger.triggers.Add(myclick_);

   }

   //进入

   public void MyClick(BaseEventData data)

   {

       imagee.color = Color.white;        

   }

   //离开

   public void MyClick_(BaseEventData data)

   {

       imagee.color = Color.red;      

   }

 

}

3D物体检测

加入碰撞盒,可用下面代码检测鼠标进入物体,显示物体名字

using System.Collections;

using System.Collections.Generic;

using UnityEngine;

public class Obj_OnTrigger : MonoBehaviour {

   //当鼠标进入碰撞器的时候调用  

   private void OnMouseEnter()

   {

       Debug.Log("进入");

   }

   //当鼠标离开碰撞器的时候调用  

   private void OnMouseExit()

   {

       Debug.Log("离开");

   }

}


目录
打赏
0
0
0
0
3
分享
相关文章
|
8月前
|
Flutter笔记:滚动之-无限滚动与动态加载的实现
Flutter笔记:滚动之-无限滚动与动态加载的实现
345 0
Flutter笔记:滚动之-无限滚动与动态加载的实现(GetX简单状态管理版)
本文介绍Flutter中如何实无线滚动(基于GetX简单状态管理而非有状态组件)
154 0
|
2月前
|
Flutter下拉刷新上拉加载的简单实现方式一
Flutter下拉刷新上拉加载的简单实现方式一
61 2
Flutter笔记:无限滚动与动态加载的实现
在 Flutter 中,实现一个无尽滚动列表通常涉及使用 ListView、ListView.builder 或 ListView.separated 组件,并结合数据源和滚动控制器。这使得你可以加载和显示大量数据,只有在需要时才会动态加
316 0
Flutter EasyRefreshList使用方法 下拉加载 上拉刷新
Flutter EasyRefreshList使用方法 下拉加载 上拉刷新
利用Flutter的LayoutBuilder、BoxConstraints创建自适应布局控件
利用Flutter的LayoutBuilder、BoxConstraints创建自适应布局控件
flutter系列之:做一个修改组件属性的动画
什么是动画呢?动画实际上就是不同的图片连续起来形成的。flutter为我们提供了一个AnimationController来对动画进行详尽的控制,不过直接是用AnimationController是比较复杂的,如果只是对一个widget的属性进行修改,可以做成动画吗? 答案是肯定的,一起来看看吧。
【WPF】WPF开发用户控件、用户控件属性依赖DependencyProperty实现双向绑定、以及自定义实现Command双向绑定功能演示
Wpf开发过程中,最经常使用的功能之一,就是用户控件(UserControl)了。用户控件可以用于开发用户自己的控件进行使用,甚至可以用于打造一套属于自己的UI框架。依赖属性(DependencyProperty)是为用户控件提供可支持双向绑定的必备技巧之一,同样用处也非常广泛。
981 0
【WPF】WPF开发用户控件、用户控件属性依赖DependencyProperty实现双向绑定、以及自定义实现Command双向绑定功能演示

热门文章

最新文章

AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等