首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >ui.inputfield可以同时显示来自文本框和输入的数据吗?

ui.inputfield可以同时显示来自文本框和输入的数据吗?
EN

Stack Overflow用户
提问于 2020-03-10 16:37:13
回答 1查看 227关注 0票数 0

我有一个带有ui.inputfield的Unity应用程序。我赋予用户输入数字或移动滑块的能力。在这两种情况下,我都需要让滑块数据出现在输入字段中,或者用输入字段中输入的数字更新滑块位置。我可以从输入字段或滑块获得数据,但是我需要显示数据。我主要关心的是,我是否可以将来自两个输入的数据显示在与inputfield完全相同的位置,比如在顶部?我在输入字段的顶部找不到数据显示的任何示例。这是正确的思维方式吗?提前谢谢你。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-07-02 13:37:43

每当用户更改UI.Slider或完成在UI.InputField中输入值时,都会出现回调。

所以,是的,你可以把它们联系在一起,就像。

代码语言:javascript
复制
public class Example : MonoBehaviour
{
    public InputField inputField;
    public Slider slider;

    private void Awake()
    {
        inputField.onEndEdit.AddListener(OnInputFieldChanged);
        slider.onValueChanged .AddListener( OnSliderChanged);

        OnSliderChanged(slider.value);
    }

    private void OnInputFieldChanged(string newText)
    {
        if (float.TryParse(newText, out var value))
        {
            value = Mathf.Clamp(value, slider.minValue, slider.maxValue);

            inputField.text = value.ToString("F");
            slider.value = value;
        }
        else
        {
            Debug.LogWarning("Input Format Error!", this);
            slider.value = Mathf.Clamp(0, slider.minValue, slider.maxValue);
            inputField.text = slider.value.ToString("F");
        }
    }

    private void OnSliderChanged(float newValue)
    {
        inputField.text = newValue.ToString("F");
    }
}

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60622102

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档