【问题标题】:Check if an input field contains something检查输入字段是否包含某些内容
【发布时间】:2020-03-28 19:45:51
【问题描述】:

我正在创建一个create a name function,然后你可以点击回车来保存你的名字。但是,如果输入字段(您输入姓名的位置)为空,则会保存一个空名称,这不好:)

所以我想知道如何编写if 语句来查看 Unity 中的输入字段是否包含某些内容。 或者如果它什么都不包含,也许有人有另一种解决方案!

为了找到我的输入字段,我创建了一个游戏对象并将输入字段拖入其中。然后inputFieldText = inputFieldGame.GetComponent<Text>().text;

感谢您的帮助!

【问题讨论】:

  • string.IsNullOrWhitespace 应该在这里提供帮助。

标签: c# unity3d if-statement input


【解决方案1】:

首先,将inputFieldGame 设为InputField 类型。

其次,不要在输入字段上获取Text 类型的组件,因为它具有专用属性。

第三,要检查字符串是否为空,请使用 cmets 中提到的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
        }
    }
}

【讨论】:

    【解决方案2】:

    你可以试试这个,检查输入字段类型的字符串是否为空:

    if(inputfield.text == "") 
    {
       //your code
    }
    else 
    {
       //your code
    }
    

    【讨论】:

    • 您好 SaMat - 请在您的答案周围添加有意义的上下文/理论。仅代码的答案很难理解。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-09-25
    • 2018-05-01
    • 2016-08-09
    • 2011-06-20
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多