Unity 向 UI Slider 发送值并更新 Slider bar

Posted

技术标签:

【中文标题】Unity 向 UI Slider 发送值并更新 Slider bar【英文标题】:Unity send value to UI Slider and update Slider bar 【发布时间】:2016-01-14 14:06:08 【问题描述】:

我对 Unity 很陌生,想知道您是否可以回答这个问题。我知道如何通过脚本和 On Value Changed 中设置的函数从滑块中获取值。但是是否可以将值发送回滑块并更新 Unity 中的滑块位置?

【问题讨论】:

【参考方案1】:

您在使用新的 Unity UI 吗?

Using UnityEngine.UI;

然后你可以使用公共字段来访问 Slider

public Slider mSlider;

使用 Gameobject.Find 非常慢,因此最好尽可能避免这种情况。然后,您可以在编辑器中将滑块游戏对象分配给此变量。

然后在您的开始或更新中,您可以像这样分配滑块的值:

mSlider.value = 0.5f;

你的滑块的最大值是这样的:

mSlider.maxValue = 1.0f;

由于滑块值设置为最大值的一半,因此您的滑块应该在中间

【讨论】:

效果很好。谢谢你:)。 很高兴为您提供帮助。我的第一个答案:D 请注意,将浮点值传递给 Slider 非常重要。如果需要,将值转换为浮点数。【参考方案2】:

如果你可以使用 GameObject.Find 获取滑块,你可以设置它的 normalizedValue 属性来更新它的位置。

请注意,GameObject.Find 不适用于场景中未激活的对象,因此您可能必须在游戏开始时抓取它并将其分配给稍后可以引用的变量。

【讨论】:

以上是关于Unity 向 UI Slider 发送值并更新 Slider bar的主要内容,如果未能解决你的问题,请参考以下文章

Unity学习笔记 之 关于 Unity UI 的 Slider 的代码记录

Unity3D_UGUI速成班——06.Slider

unity监测按下键的键值并输出+unity键值

向UI发送参数并使用Java / Vaadin更新UI

向 uitableviewcell 发送新值并重新渲染

Unity入门Unity中动态控制UI的常规思路以及UI反馈效果(3D画布透明位置交替)