Unity 中 Text-TextMeshPro的获取与赋值

获取TextMeshPro组件

在Unity中获取TextMeshPro组件需要使用TMP_Text类。确保项目中已导入TextMeshPro插件,通过GetComponent方法获取组件:

cs 复制代码
using TMPro;
TMP_Text textComponent = GetComponent<TMP_Text>();

若需通过代码动态查找对象:

cs 复制代码
GameObject textObject = GameObject.Find("TextObjectName");
TMP_Text textComponent = textObject.GetComponent<TMP_Text>();

修改TextMeshPro文本内容

通过text属性直接赋值或修改文本

cs 复制代码
textComponent.text = "Hello World";

支持富文本标签

cs 复制代码
textComponent.text = "<color=#FF0000>Red Text</color>";

动态设置文本属性

调整字体大小、颜色等属性:

cs 复制代码
textComponent.fontSize = 24;
textComponent.color = Color.blue;
textComponent.alignment = TextAlignmentOptions.Center;

启用或禁用自动尺寸调整:

cs 复制代码
textComponent.enableAutoSizing = true;
textComponent.fontSizeMin = 12;
textComponent.fontSizeMax = 36;

响应文本交互事件

为可点击文本添加事件监听(需启用raycastTarget):

cs 复制代码
textComponent.raycastTarget = true;
textComponent.GetComponent<TextMeshProUGUI>().onClick.AddListener(() => {
    Debug.Log("Text clicked");
});

注意事项

使用前需确认:

  • 场景中对象已附加TextMeshPro - TextTextMeshProUGUI组件
  • 脚本文件顶部已添加using TMPro命名空间
  • 若出现缺失引用错误,需通过Window > TextMeshPro > Import TMP Essential Resources导入基础资源
相关推荐
HonestGoat3 小时前
Unity3d之碰撞体设置
unity
那个村的李富贵11 小时前
Unity自适应文本提示框:从原理到实战
unity·游戏引擎
HonestGoat11 小时前
Unity3d之鼠标光标
unity
WarPigs12 小时前
Unity人物翻越功能
unity·游戏引擎
游乐码12 小时前
Unity基础(四)向量相关
游戏·unity·游戏引擎
VT LI14 小时前
Cocos2d-x 引擎架构全面深度解析:从底层渲染到上层交互的系统性技术全景
游戏引擎·cocos·引擎架构
Kurisu57514 小时前
探灵直播2026最新官方正版免费下载 一键转存 永久更新 (看到速转存 资源随时走丢)
游戏·游戏引擎·游戏程序·动画·关卡设计
神码编程15 小时前
【Unity】MiniGame编辑器小游戏(十五)中国象棋局域网对战【Chinese Chess】(上)
unity·编辑器·游戏引擎·小游戏
伽蓝_游戏15 小时前
第四章:AssetBundle 核心机制与文件结构
unity·c#·游戏引擎·游戏程序
郝学胜-神的一滴16 小时前
中级OpenGL教程 006:高光反射原理与 Shader 实现
c++·unity·godot·图形渲染·three.js·opengl·unreal