unity c#使用.text后隐藏文本
所以我想隐藏一个文本。我通常使用.setActive(真/假),但如果我想在游戏运行期间更改文本,我会使用GameObject.text 问题来了:如果我使用Gameobject.text,我就不能再使用Gameobject.setActive了 仅供参考,这应该是高分,在后面跑,一旦你达到比赛目标就会被揭穿 因此,我为文本创建了一个SerializedField,并使用.Find来查找正确的对象unity c#使用.text后隐藏文本,c#,unity3d,text,C#,Unity3d,Text,所以我想隐藏一个文本。我通常使用.setActive(真/假),但如果我想在游戏运行期间更改文本,我会使用GameObject.text 问题来了:如果我使用Gameobject.text,我就不能再使用Gameobject.setActive了 仅供参考,这应该是高分,在后面跑,一旦你达到比赛目标就会被揭穿 因此,我为文本创建了一个SerializedField,并使用.Find来查找正确的对象 [SerializeField] private GameObject gameende; Ga
[SerializeField] private GameObject gameende;
GameObject gameendee = GameObject.Find("gameende");
将其设置为false,使其隐藏
gameendee.SetActive(false);
我的分数是整数
punkte = 120 - (vergroessert * 10)+ ei;
我在课文中得了分数
gameendee.text = "Dein Punktestand: " + punkte.ToString();
现在我想做:
gameendee.SetActive(true);
但这不起作用
另一种方法是什么?这是因为“GameObject.Find()”只查找活动的游戏对象
相反,您应该只查找一次游戏对象,并将引用存储在变量中。这也是muhc更高的性能 鉴于到目前为止您向我们展示的内容,没有理由SetActive(true)不在这种上下文中工作。如果删除SetActive()调用,它会工作吗?是的,我想。我在开始时设置为false,但我看到文本在游戏过程中发生了变化,只是因为setActive(false)没有显示出来。但是我在使用.text后无法实现它。错误消息说“text”没有setactive的定义。似乎您实际使用的是
text gameende
而不是GameObject gameende
?=><代码>gameende.gameObject.setActive(true)代码>我使用了GameObject gameende=GameObject.Find(“gameende”);嗯,那不可能是对的,因为你设置了“gameendee.text”,而游戏对象没有“text”属性。。。?