首页 > 解决方案 > “滑块”不包含“值”的定义

问题描述

我想做一些项目,当我滑动 UI 滑块时会出现一些文本。但是在我完成编码后,出现了错误。

错误 CS1061:“滑块”不包含“值”的定义,并且找不到接受“滑块”类型的第一个参数的可访问扩展方法“值”(您是否缺少 using 指令或程序集引用?)

但是如果我放入一个新项目,错误并没有出现。当我导入资产时,错误再次出现。

这是我的代码:

public class TextControl : MonoBehaviour {

public Slider Food;
public Slider Calories;
public Text States;
public Text Question;

public void Update()
{
    wordShown();
}
public void wordShown()
{
    if (Food.value >= 0.5f) 
    {
        if (Calories.value >= 0.5f) 
        {
            States.text = "INACTIVE, UNHEALTHY";
            Question.text = "What changes can make him be active and healthy?";
        } 
        else if (Calories.value < 0.5f) 
        {
            States.text = "ACTIVE, HEALTHY";
            Question.text = "What should he do to maintaian his fitness?";
        }
    } 
    else if (Food.value < 0.5f) 
    {
        if (Calories.value >= 0.5f) 
        {
            States.text =  "INACTIVE,UNHEALTHY";
            Question.text = "What classes of food should have consume by this person?";
        } 
        else if (Calories.value < 0.5f) 
        {
            States.text =  "ACTIVE, HEALTHY";
            Question.text = "High calorie associated with what type of food?";
        }
    }
}

}

标签: slider

解决方案


我得到了另一个解决方案。

使用 UnityEngine.UI.Slider 而不是 Slider,因为正如 Kamil Digital 所说,属性滑块和脚本滑块会发生某种冲突。

例子:

Slider MusicSlider; //DOESNT WORK
MusicSlider = musicObj.GetComponent<Slider>();//DOESNT WORK

UnityEngine.UI.Slider MusicSlider;//SHOULD WORK
MusicSlider = musicObj.GetComponent<UnityEngine.UI.Slider>();//SHOULD WORK

推荐阅读