【问题标题】:Don't know how to send Integer value through Unity 3D using InputField不知道如何使用 InputField 通过 Unity 3D 发送整数值
【发布时间】:2016-01-10 16:58:24
【问题描述】:

在大多数情况下,我的代码都能正常工作。我想要代码做的是将输入值放入压力脚本中。现在,我将它设置为 5,但我将数字 5 替换为用户输入,而不是由数字 5 值定义。

当我提交时,只有数字 5 被发送,而不是由用户输入。

我也有问题,它是一个字符串,但我希望它是一个整数。有什么建议么?

using UnityEngine;
using System.Collections;
using UnityEngine.UI;

public class UserInput : MonoBehaviour {

    InputField input;

    public DataManager data;

        void Start ()

        {
            var input = gameObject.GetComponent<InputField>();
            var se= new InputField.SubmitEvent();
            se.AddListener(SubmitName);
            input.onEndEdit = se;
        }


    private void SubmitName(string pressure)

        {

        var pressureScript = GameObject.FindObjectOfType(typeof(DataManager)) as DataManager;
        pressureScript.pressure = 5;

        }

    }

【问题讨论】:

  • 你这个问题为什么问了两次?

标签: input unity3d integer textfield


【解决方案1】:

您可以使用 int.TryParse(pressure, out intPressure) 解析字符串

见:https://msdn.microsoft.com/fr-fr/library/f02979c7%28v=vs.110%29.aspx

例如:

int intPressure = 0;
if(int.TryParse(pressure, out intPressure))
{
    // Parse success, set the value of pressure in your component.
    pressureScript.pressure = intPressure;
}
else
{
    // Parse fail, show an error or something
}

【讨论】:

  • Sharundaar 在这里回答所有问题 :)
  • 在这个时代有一些空闲时间:)
猜你喜欢
  • 2020-08-20
  • 2015-05-20
  • 1970-01-01
  • 2011-10-28
  • 2014-11-07
  • 1970-01-01
  • 1970-01-01
  • 2016-10-11
  • 1970-01-01
相关资源
最近更新 更多