Кнопка с AddListener перестает работать иногда - PullRequest
0 голосов
/ 23 апреля 2020

У меня есть динамическая c кнопка в моей сцене без базового onClick, я заполняю onclick из моего кода следующим образом:

MyButton.GetComponent<Button>().onClick.RemoveAllListeners();
MyButton.GetComponent<Button>().onClick.AddListener(buttonAction);

buttonAction набирается UnityAction и значение выглядит примерно так:

buttonAction = delegate{MyFunction();}

Итак, в зависимости от контекста, MyFunction может измениться, и это цель этой кнопки c dynamic.

Все это работает "отлично", но бывает, будь то в редакторе или на Android и по какой-то неизвестной причине, что все мои кнопки, управляемые таким образом, перестают работать.

То есть, что по нему можно щелкнуть / нажать, там не будет абсолютно ничего, ни ошибок, ни логов, ни анимации, как то, что кнопка «нажата», ничего.

Способ исправить это - перезапустить приложение.

У вас есть идеи для меня? Почему это иногда перестает работать?

Спасибо!

...