【Unity】获取Slider组件报错

项目场景:

通过传入数据调整Slider组件的value值,实现血量随数据更新


问题描述

通过GetComponent<>()获取Slider报错

ArgumentException: GetComponent requires that the requested component ‘Slider’ derives from MonoBehaviour or Component or is an interface.

using Tools;
using UI.Base;
using UnityEngine;
using UnityEngine.UIElements;

namespace UI {
    
    
    public class MainUI : MonoBehaviour{
    
    
        [Header("子界面")]
        [SerializeField]private GameObject HPSlider;
        private Slider slider;
        private new void Start() {
    
    
            slider = HPSlider.GetComponent<Slider>();
        }

        private void UpdateHp(Message message) {
    
    
                slider.value = (float)message.Body;
        }
    }
}

原因分析:

使用错误的引用using UnityEngine.UIElements;
在这里插入图片描述


解决方案:

使用正确的引用using UnityEngine.UI;
>提示:这里填写该问题的具体解决方案:

猜你喜欢

转载自blog.csdn.net/ainklg/article/details/130225365