首页 > 解决方案 > Unity C# 错误:“Sprite”不包含采用 0 个参数的构造函数

问题描述

我一直在为我的 Unity 游戏开发项目系统。我对编码仍然很陌生,但我正在尽我最大的努力。

我的项目系统通过访问带有我需要的数据的接口来工作。在尝试将我的精灵从接口分配给私有变量时,我收到错误“'Sprite' 不包含采用 0 个参数的构造函数。” 我到处寻找解决方案,到目前为止还没有找到任何对我有用的修复程序。

我创建的用于访问接口的类如下所示:

public class ISType : IISType {

    [SerializeField] string _name;

    [SerializeField] Sprite _icon;

    ISType()
    {
        _name = "Type";
        _icon = new Sprite(); }

    public string Name
    {
        get
        { return _name; }

        set
        { _name = value }
    }

    public Sprite Icon {
        get
        { return _icon; }

        set
        { _icon = value; }
}

}

如果有人能说出发生了什么,我将非常感谢您的帮助!:)

标签: visual-studioc#ubuntu-unity

解决方案


答案在错误中。Sprite 没有采用 0 个参数的构造函数。在没有看到代码的情况下,我猜您使用参数制作了一个自定义构造函数,并且没有添加无参数的构造函数。

默认的无参数构造函数如下所示:

Sprite()
{}

一定要做更多的阅读和教程。这是相当基本的类信息。


推荐阅读