2016-10-24 6 views
0

У меня есть кнопка в моей игре, и я хочу, когда хост-плеер отвечает и выбирает одну кнопку, чтобы получить кнопку кнопки этой кнопки игрового объекта, чтобы изменить ее цвет.Невозможно получить скрипт Button из gameobject в единстве

Но я получаю ошибку вроде этого:

NullReferenceException: ссылка на объект не указывает на экземпляр объекта

Это мой код:

 Button playerOneAnswerBtn = GameObject.FindWithTag (playerOneAnswer).GetComponent<Button>(); 
     ColorBlock cbPlayerOneAnswer = playerOneAnswerBtn.colors; 
     cbPlayerOneAnswer.normalColor = Color.blue; 
     cbPlayerOneAnswer.highlightedColor = Color.blue; 
     playerOneAnswerBtn.colors = cbPlayerOneAnswer; 
+0

'debug.log()' результат 'FindWithTag()' и 'GetComponent

ответ

0

I угадайте, что вы новичок в программировании, вам нужно помнить о значении NullReferenceException AN ullReferenceException возникает, когда вы пытаетесь использовать метод или свойство ссылочного типа (C#, Visual Basic), значение которого равно null. (more) Итак, в вашем случае отсутствует объект/null, и вы пытаетесь получить к нему доступ. Скорее всего, эта линия

Button playerOneAnswerBtn = GameObject.FindWithTag (playerOneAnswer).GetComponent<Button>(); 

Вы можете обеспечить его через

 if(GameObject.FindWithTag (playerOneAnswer)! = null){ 
     //your code 
     } 
     else{ 
     Debug.LogError(playerOneAnswer +" tag object did not found.") 
     }