Кнопка Unity onclick не запускает функцию (связана через интерфейс Unity) - PullRequest
1 голос
/ 23 апреля 2019

У меня есть проект в Unity 2018.2.21f1.У меня уже есть сценарий C# для обработки монет в моей игре, который называется CoinHandler.

. Он уже обозначен как gameobject в сцене, и он связал некоторые компоненты (text) с ним.должен обновить.

enter image description here enter image description here

Тогда я добавлю button к сцене (как вы можетесм. на первом рисунке), и я пытаюсь вызвать функцию из предыдущего сценария в его on click() событии.Для этого я захожу в инспектор и перетаскиваю coinHandler gameObject и выбираю нужную функцию (метод, так как он возвращает void).

enter image description here

Вы можете заметить, что значок игрового объекта на этом рисунке меняет на значок script.Я не знаю, если это плохой знак, но просто заметьте это.Он меняется только после выбора функции.Прежде он остается с соответствующим значком:

enter image description here

И, наконец, в консоли я получаю следующее предупреждение:

Нет ресурса скрипта для GameObjectSelectionItem.Убедитесь, что определение находится в файле с тем же именем.

Конечно, и имя скрипта, и класс внутри него совпадают.

Имеет прочитал , что это может быть из-за того, что окно аниматора открыто.У меня было, но я закрыл его, и все было так же, ничего не исправлено.

Есть идеи о том, почему это может происходить?

1 Ответ

1 голос
/ 24 апреля 2019

Если вы хотите использовать элементы пользовательского интерфейса, например, кнопку, вам нужно добавить EventSystem к сцене.Сцена должна содержать только один EventSystem, и это может быть где угодно в иерархии.Взгляните на официальную документацию .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...