Как исправить ошибку Object reference not set to an instance?

На сцене есть скрипт.
При его выполнении текст вопроса выводится, а текст ответа на кнопке нет.
Возникает ошибка Object reference not set to an instance.
То есть нет ссылки на объект. Но она есть.
В чем тут дело?

void Start()
{
Questions questions = null;

// Получаем ссылки на объекты.
// На кнопки.
var answer1Button = GameObject.Find("Answer1Button"); 
var answer2Button = GameObject.Find("Answer2Button"); 
var answer3Button = GameObject.Find("Answer3Button"); 
var answer4Button = GameObject.Find("Answer4Button"); 

// На компоненты.
Text answer1ButtonText = answer1Button.GetComponent<Text>();
Text answer2ButtonText = answer2Button.GetComponent<Text>();
Text answer3ButtonText = answer3Button.GetComponent<Text>();
Text answer4ButtonText = answer4Button.GetComponent<Text>();

// Выводим вопрос.
var questionText = GameObject.Find("QuestionText");  
Text _text = questionText.GetComponent<Text>();
_text.text=questions._Question._Question; // Тут всё работает


// Выводим текст на кнопке.
answer1ButtonText.text ="Этот текст не выводится"; // NullReferenceException: Object reference not set to an instance of an object


633a845455257373381165.jpeg
  • Вопрос задан
  • 81 просмотр
Решения вопроса 1
GavriKos
@GavriKos Куратор тега Unity
Но она есть.

докажите. Скрин компонентов Answer1Button
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@Ezekiel4
Охотник на пиратов и сборщик монолитов
Попробуйте сразу после строк с получением ссылок на answer1Button и answer1ButtonText передать в консоль проверку на null.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы