Проверьте, содержит ли поле ввода что-то - PullRequest
0 голосов
/ 28 марта 2020

Я делаю create a name function, а затем вы можете нажать Enter, чтобы сохранить свое имя. Но если поле ввода (где вы вводите свое имя) будет пустым, будет сохранено пустое имя, и это нехорошо:)

Так что мне было интересно, как сделать оператор if, чтобы посмотреть, если ввод поле в Unity содержит что-то. Или, если в нем ничего нет, возможно, у кого-то есть другое решение!

Чтобы найти поле ввода, я создал игровой объект и перетащил в него поле ввода. и тогда inputFieldText = inputFieldGame.GetComponent<Text>().text;.

Я благодарен за любую помощь!

Ответы [ 2 ]

3 голосов
/ 28 марта 2020

Прежде всего, сделайте inputFieldGame типа InputField.

Во-вторых, не получайте компонент типа Text в поле ввода, потому что у него есть выделенное свойство.

В-третьих , чтобы проверить строку на пустоту, используйте string.IsNullOrWhitespace, как указано в комментариях.

Итак, полный фрагмент кода:

using UnityEngine;
using UnityEngine.UI;

public class NameCreatorOrWhatever
{
    public InputField inputFieldGame;

    public void CreateAName() 
    {
        string newName = inputFieldGame.text;
        if(!string.IsNullOrWhiteSpace(newName)) 
        {
            // Name is not empty, so use it
        }
        else
        {
            // Name is empty
        }
    }
}
0 голосов
/ 28 марта 2020

Вы можете попробовать это, чтобы проверить, является ли тип поля ввода пустым:

if(inputfield.text == "") 
{
   //your code
}
else 
{
   //your code
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...