我试图在unity项目中更改textmesh pro的文本,所以我在GameObject中添加了一个TextMeshPro text组件。现在,当我尝试编写TextMeshPro textmeshPro = GetComponent<TextMeshPro>();时,我得到的错误是TextMeshPro在命名空间中不可用。我使用了导入using TMPro;。唯一可用的是TextMesh。这是等同于TextMeshPro的代码吗
而且,TMP_Text对我也不起作用。除了"TextMesh“之外,VS 2019没有其他建议
我的完整代码:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using TMPro;
public class ContextMenuInteraction : MonoBehaviour
{
public string partName;
public GameObject assignedGameObject;
void Start()
{
TextMesh Test = assignedGameObject.GetComponent<TextMesh>();
TextMeshPro textmeshPro = GetComponent<TextMeshPro>();
}
// Update is called once per frame
void Update()
{
}
public void showNearContextMenu (GameObject target)
{
//use position of game object to spawn context menu near it
}
}我的TextMeshPro对象如下所示:

发布于 2021-07-29 00:55:06
重新生成项目文件。编辑>首选项>外部工具>重新生成项目文件-问题由@hijinxbassist在帖子下面的评论中解决
发布于 2021-07-14 12:01:29
问题出在组件类型上。你需要找到这个类型为"TextMeshProUGUI“的组件,这是UI的文本组件。
示例:
TextMeshProUGUI nameField;
nameField = GetComponent<TextMeshProUGUI>();
nameField.text = "some text";发布于 2021-07-14 03:06:00
对我来说,我认为更改编译器是正确的,例如Vscode或VS或rider
https://stackoverflow.com/questions/68366258
复制相似问题