Единство проверить, если кнопка пуста и скрыть ее - PullRequest
0 голосов
/ 07 апреля 2020


Hello! Я делаю викторину, и мне нужна твоя помощь.
Я получаю вопросы и ответы с сервера, и я отображаю их в игре следующим образом:

    questionText.text = results.Result[0].question;
    button1Text.text = results.Result[0].answer1;
    button2Text.text = results.Result[0].answer2;
    button3Text.text = results.Result[0].answer3;
    button4Text.text = results.Result[0].answer4c;

На некоторые вопросы у меня есть только 2 ответа, а затем две кнопки остаются пустыми, выглядит как-то вот так
Мне нужно сделать какую-то проверку для кнопок, если кнопка пуста, она скрыта, но если в кнопке есть что-то, она отображается.
Спасибо!

1 Ответ

1 голос
/ 07 апреля 2020

Вы можете использовать string.IsNullOrEmpty, чтобы проверить, является ли ответ пустым, например, так:

questionText.text = results.Result[0].question;
button1Text.text = results.Result[0].answer1;
button2Text.text = results.Result[0].answer2;
button3Text.text = results.Result[0].answer3;
button4Text.text = results.Result[0].answer4c;

// Hide buttons if empty. So we invert the isNullOrEmpty (when it's true -> we do not want to show the button!)
// As corrected below by @dohavin. We take the parent of the text object, assuming that is the actual button object.
button1Text.transform.parent.gameObject.setActive(!string.IsNullOrEmpty(results.Result[0].answer1));
button2Text.transform.parent.gameObject.setActive(!string.IsNullOrEmpty(results.Result[0].answer2));
button3Text.transform.parent.gameObject.setActive(!string.IsNullOrEmpty(results.Result[0].answer3));
button4Text.transform.parent.gameObject.setActive(!string.IsNullOrEmpty(results.Result[0].answer4c));
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...