c# - 在开始时访问和分配 TMP_Text
问题描述
我目前正在使用 Inspector 分配每个文本元素,但我想通过代码而不是在我的 start 方法中分配它们。
我有多个组件,如何按名称查找组件。我需要每个组件与我创建的变量相匹配。
public class Timer : MonoBehaviour
{
public TMP_Text p1Name;
public TMP_Text p2Name;
public TMP_Text p1Score;
public TMP_Text p2Score;
private void Start()
{
}```
解决方案
如果您想按名称获取它们,请使用该行
GameObject.Find("NameHere")
然后抓取你需要的组件
TMP_Text yourText = null;
private void Start()
{
yourText = GameObject.Find("nameHere").GetComponent<TMP_Text>();
}
如果您的所有文本对象都是同一个父对象的子对象,您还可以遍历父对象的变换而不是较大的对象Find
并使用Transform.Find
. 您是否有理由不想在检查员中分配它们?分配参考而不是找到它们Start
会更快。
推荐阅读
- django - 为什么我不能再次使用 Django 获取 API 数据?
- xamarin - 如何在 ListView 中为复选框设置名称
- python - 将 pandas df 转换为列表的字典
- javascript - Uint8Array.map(...) 意外行为
- embedded-linux - YOCTO:无法将 linux 模块插入内核:版本不同
- javascript - 每次在 Timeline Highchart 中单击后,如何使用新数据重新绘制 Timeline?
- php - 使用复选框更新数据库中的状态 - Laravel
- python - 为什么要在不断打印出鼠标光标的位置时使用 rjust ?
- python - 从复杂文件中提取数据
- android - 使用 JobService 的 Jobscheduler 在几个小时后停止工作