Button On Click()
Добавлено:
11 сен 2019, 14:22
Andry62324
День добрый!
Подскажите можно из скрипта отключить события которые добавлены на On Click(), если можно то как?
Re: Button On Click()
Добавлено:
11 сен 2019, 16:15
Jarico
добавляет слушателя (метод или лямбда делегат)
https://docs.unity3d.com/ru/current/ScriptReference/Events.UnityEvent.AddListener.htmlудаляет слушателя (метод или лямбда делегат)
https://docs.unity3d.com/ru/current/ScriptReference/Events.UnityEvent.RemoveListener.htmlпример обработки нажатия с лямбда делегатом
Используется csharp
public Button m_Button;
private void Awake()
{
m_Button.onClick.AddListener(
delegate
{
print("m_Button -> Clicked!!");
});
}
Re: Button On Click()
Добавлено:
12 сен 2019, 11:28
Woland
Если я не ошибаюсь, то есть один нюанс (как в анекдоте): если изначально в редакторе события уже добавлены на кнопку, то добавление/удаление событий из скрипта не работает. То есть чтоб скрипт работал, нужна пустая кнопка без событий.
Но это не точно, надо проверять.
Re: Button On Click()
Добавлено:
12 сен 2019, 12:12
Tolking
Удаление не работает - это точно. Уже проверено... Добавление и удаление добавленного программно работает...
Re: Button On Click()
Добавлено:
12 сен 2019, 15:14
Woland
Да, приходится все делать через код. Если нужны какие-то события по умолчанию, но приходится в старте прописывать добавление этих событий.