UnityEvent.RemoveListener
Declaration
public void RemoveListener(Events.UnityAction call);Параметры
| Параметр | Описание |
|---|---|
| звонок | Функция обратного вызова для удаления. |
Описание
Удаляет прослушивающее устройство из UnityEvent.
Этот метод удаляет все случаи указанного слушателя из UnityEvent. Если вы добавили один и тот же слушатель несколько раз, этот метод удалит все его случаи. Используйте этот метод для очистки слушателей и предотвращения непреднамеренных обратных вызовов.
//Attach this script to a GameObject //This script creates a UnityEvent that calls a method when a key is pressed //Note that 'q' exits this application. using UnityEngine; using UnityEngine.Events;
public class Example : MonoBehaviour { UnityEvent m_MyEvent = new UnityEvent();
void Start() { //Add a listener to the new Event. Calls OnKeyPressed method when invoked m_MyEvent.AddListener(OnKeyPressed); }
void Update() { // Press Q to close the Listener if (Input.GetKeyDown("q") && m_MyEvent != null) { Debug.Log("Quitting"); //Remove the OnKeyPressed callback from the UnityEvent. m_MyEvent.RemoveListener(OnKeyPressed);
#if UNITY_EDITOR UnityEditor.EditorApplication.isPlaying = false; #endif
Application.Quit(); }
//Press any other key to begin the action if the Event exists if (Input.anyKeyDown && m_MyEvent != null) { //Begin the action m_MyEvent.Invoke(); } }
void OnKeyPressed() { //Output message to the console Debug.Log("Q key pressed"); } }