首页 > 解决方案 > C# 错误 CS0029 无法将类型“int”隐式转换为 UnityEngine.UI.Text

问题描述

我在控制台中不断收到此错误:Assets/Scripts/ScoreScript.cs(37,25): error CS0029: Cannot implicitly convert type 'int' to UnityEngine.UI.Text

这是我的代码:

public class ScoreScript : MonoBehaviour
{
    public static int score = 0;
    public Text scoreText;

    private void OnTriggerEnter2D(Collider2D collision)
    {
        if (collision.tag == "Score")
        {
            scoreText.text = (++score).ToString();
            Destroy(collision.gameObject);
            return;
        }
        else if (collision.tag == "Obstacle")
        {
            SceneManager.LoadScene(SceneManager.GetActiveScene().buildIndex);
            scoreText = 0;
        }
    }
}

标签: c#unity3d

解决方案


在此处更改此行:

scoreText = 0;

至:

scoreText.text = 0.ToString();

推荐阅读