UGUI中使用程式碼動態繫結觸發事件
前言:UGUI系統中官方提供了一種Button控制元件,Button封裝了官方提供的一套OnClick事件,如果該GameObject還需要支援按下,移入,移出等事件呢?這時候我們就需要新增EventTrigger元件。如果我們要給一個文字或是一張圖片,新增滑鼠響應事件,通過EventTrigger元件就變得易如反掌。今天我們實現的是動態新增EventTrigger元件並且動態新增觸發事件。
執行前:
執行後:
直接貼出程式碼,因為註釋寫的很詳細
using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.UI; using UnityEngine.EventSystems; using UnityEngine.Events; public class newtest : MonoBehaviour { // Use this for initialization void Start () { var trigger = transform.gameObject.GetComponent<EventTrigger>(); if (trigger == null) trigger = transform.gameObject.AddComponent<EventTrigger>(); // 例項化delegates(trigger.trigger是註冊在EventTrigger元件上的所有功能) trigger.triggers = new List<EventTrigger.Entry>(); // 在EventSystem委託列表中進行登記 EventTrigger.Entry entry = new EventTrigger.Entry(); // 設定 事件型別 entry.eventID = EventTriggerType.PointerClick; // 例項化回撥函式 entry.callback = new EventTrigger.TriggerEvent(); //UnityAction 本質上是delegate,且有數個泛型版本(引數最多是四個),一個UnityAction可以新增多個函式(多播委託) UnityAction<BaseEventData> callback = new UnityAction<BaseEventData>(OnScriptControll); //將方法繫結在回撥上(給回撥方法新增監聽) entry.callback.AddListener(callback); // 新增事件觸發記錄到GameObject的事件觸發元件 trigger.triggers.Add(entry); } public void OnScriptControll(BaseEventData arg0) { Debug.Log("Test Click"); } }
相關推薦
UGUI中使用程式碼動態繫結觸發事件
前言:UGUI系統中官方提供了一種Button控制元件,Button封裝了官方提供的一套OnClick事件,如果該GameObject還需要支援按下,移入,移出等事件呢?這時候我們就需要新增EventTrigger元件。如果我們要給一個文字或是一張圖片,新
Unity3D程式碼動態繫結按鈕事件
在場景載入時,即可繫結所有的事件處理函式,可以繫結onClick的監聽,亦可以繫結其他事件,稍作修改,還可使用於其他GameObject,不一定是Button.public class ScenePl
Unity使用uGUI動態繫結按鈕事件
適用場景 像這樣的彈窗在遊戲中經常出現,這個彈窗就是一個prefab,但是當不同的場景觸發這個彈窗時,彈窗上的“確定”按鈕觸發的事件是不同的。 因此需要為彈窗按鈕動態繫結事件。 STEP1 在彈窗入口處繫結事件 public void OnXXXBtnClic
v-for中通過動態繫結class來實現觸發效果。
vue動態繫結class練習。 在v-for中: :class=“{ ‘類名1’:條件表示式,‘類名2’:條件表示式… }” <template> <div class="app-*"> <ul> <li
react中button上繫結react事件觸發原生body上繫結的事件
情景再現需求:在Web頁面中新增一個使用移動裝置掃描二維碼的功能,在點選按鈕時顯示二維碼(在點選按鈕二維碼消失),點選非二維碼區域時將其隱藏起來。出現問題:點選按鈕二維碼顯示之後,在點選按鈕,二維碼一直顯示,不會消失分析原因:React合成事件系統的委託機制,依賴事件的冒泡機
td中通過button繫結click事件實現跳轉,以及獲取同一table中另一td的值
1、通過button繫結事件跳轉到同一頁面的其他div 例: js頁面 <table id = "tableid"> <tr> <td id = "rcode">"123456"</td> <td><butto
java中的動態繫結
上程式碼: class A { int i = 1; A(){ } A(int x) { i=x; } public void show() { System.out.println("A::show "+i); } } class B extend
easyui中datagrid動態繫結json載入列的解決方案
在做專案中有這樣一個問題:在前臺輸入sql語句,傳入後臺後獲得資料,將資料繫結在datagrid上顯示。 這個問題困擾我很久,因為如果是傳入sql語句的話,很難確定是哪個表,也不好確定到底有多少列,所以無法使用實體類來獲得資料,解析sql語句的話……..太
jquery input動態繫結onchange事件
<input type=text>繫結onchange事件的注意事項: $('input[name=myInput]').change(function(){...}); However, this event will only fire when t
jquery中取消和繫結hover事件的正確方式
在網頁設計中,我們經常使用jquery去響應滑鼠的hover事件,和mouseover和mouseout事件有相同的效果,但是這其中其中如何使用bind去繫結hover方法呢?如何用unbind取消繫結的事件呢? 一、如何繫結hover事件 先看以下程式碼,假設我們
ASP.NET中dropdownlist 動態繫結資料的二種方法
DataSet ds=new DataSet();SqlDataAdapter command=new SqlDataAdapter("",conn);...conn.Open(); //開啟資料庫連線command.SelectCommand.CommandText="Select a,b FROM
uGUI使用程式碼動態新增Button.OnClick()事件(Unity3D開發之十二)
猴子原創,歡迎轉載。轉載請註明: 轉載自Cocos2Der-CSDN,謝謝!uGUI出來這麼久了,也一直沒好好用用,主要是公司專案不用U3D。昨晚用了下Button,還是比較爽的。主要說下用程式碼新增button.OnClick()事件的方法(使用屬性面板新增的方法就不說了)
DevExPress控制元件中ComboBoxEdit動態繫結資料
List<string> strList = new List<string>(); //strList.Add()獲取資料後
HTML中關於動態建立的標籤無法繫結js事件的解決方法
小夥伴們在前端頁面的時候,是不是會經常遇到用JavaScript動態創建出來的Button按鈕或其他標籤無法使用點選事件的問題。如下程式碼,使用jquery在body中動態建立一個class為demo的Button按鈕,當點選這個按鈕時無法觸發點選事件。 <script> $(fun
9.42jquery動態新增元素無法觸發繫結的事件的解決方案
jquery動態新增元素無法觸發繫結的事件的解決方案。 ╭(●`∀´●)╯二狗最近在工作中遇到一個問題,即當用jquery動態新增元素後,發現給動態新增的元素卻無法觸發事件(╯#-_-)╯╧═╧ ( ╯#-_-)╯┴—┴。後來在網上查閱了一些資料,發現原來要這樣處理๑乛◡乛๑: 先上我出錯
element-ui中select元件繫結值改變,觸發change事件
1.安裝vuecli腳手架 2.終端輸入 cnpm i element-ui -S 安裝element-ui 3.按需引入select元件 在main.js中寫入如下程式碼 /* 匯入第三方庫開始 */ import 'element-ui/
jquery動態新增元素無法觸發繫結的事件的解決方案。
最近遇到一個問題,即當用jquery動態新增元素後,發現給動態新增的元素卻無法觸發事件。後來在網上查閱了一些資料,發現原來要這樣處理: 先上我出錯的程式碼: <!DOCTY
Delphi 程式碼建立控制元件與事件動態繫結
unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls; type TF
C++中的動態型別與動態繫結、虛擬函式、執行時多型的實現【轉】
(轉自:https://blog.csdn.net/iicy266/article/details/11906509) 動態型別與靜態型別 靜態型別 是指不需要考慮表示式的執行期語
Vue中動態繫結img的src屬性
問題:不同的status值,載入不同的圖片,如下程式碼雖然動態綁定了src,但是並不能成功載入圖片 <div> <img :src="imgUrl"/> <p>{{info}}</p> </div> computed: