【发布时间】:2016-01-14 14:06:08
【问题描述】:
我对 Unity 很陌生,想知道您是否可以回答这个问题。我知道如何通过脚本和 On Value Changed 中设置的函数从滑块中获取值。但是是否可以将值发送回滑块并更新 Unity 中的滑块位置?
【问题讨论】:
标签: c# user-interface unity3d slider
我对 Unity 很陌生,想知道您是否可以回答这个问题。我知道如何通过脚本和 On Value Changed 中设置的函数从滑块中获取值。但是是否可以将值发送回滑块并更新 Unity 中的滑块位置?
【问题讨论】:
标签: c# user-interface unity3d slider
您在使用新的 Unity UI 吗?
Using UnityEngine.UI;
然后你可以使用公共字段来访问 Slider
public Slider mSlider;
使用 Gameobject.Find 非常慢,因此最好尽可能避免这种情况。然后,您可以在编辑器中将滑块游戏对象分配给此变量。
然后在您的开始或更新中,您可以像这样分配滑块的值:
mSlider.value = 0.5f;
你的滑块的最大值是这样的:
mSlider.maxValue = 1.0f;
由于滑块值设置为最大值的一半,因此您的滑块应该在中间
【讨论】:
如果你可以使用 GameObject.Find 获取滑块,你可以设置它的 normalizedValue 属性来更新它的位置。
请注意,GameObject.Find 不适用于场景中未激活的对象,因此您可能必须在游戏开始时抓取它并将其分配给稍后可以引用的变量。
【讨论】: