游戏中界面需要来回切换,一种方法是把它们都显示出来,用到某个游戏对象的时候让它的位置发生变化,是我们能看到;另一种方法就是游戏对象都放在这里,只是有些显示,而有些要隐藏。当我需要某些物体显示的时候它再显示,同时也可以把不必要的游戏物体给隐藏起来。
隐藏游戏物体用SetActive()方法。
比如:
GameObject gameLoginBackground;
// Use this for initialization
void Start () {
gameLoginBackground = GameObject.Find("LoginBackground");
gameLoginBackground.SetActive(false);
}
这样,游戏物体LoginBackground就被隐藏掉了。
注意:(这里有一个很重要的点)
我们说可以SetActive()方法将一个显示的游戏对象设置成隐藏的,但是一个本来就隐藏的游戏对象是无法设置成显示的!
什么意思?来看一张图片:
我们可能会想,我在这个Inspector面板中把它的对号给去掉,它的SetActive()方法的值就是false,等到我想让它显示了,我再设置SetActive()方法的值为tr

在Unity游戏中,切换界面通常涉及显示和隐藏游戏对象。可以使用SetActive()方法来实现这一目标,隐藏游戏物体如LoginBackground。但需注意,已经隐藏(不可用)的游戏对象无法通过SetActive()设置为显示,因为这会导致错误。正确做法是保持游戏物体在Inspector面板中的启用状态,仅通过SetActive()控制其可见性。此外,当对象被设置为不可用时,Destroy()方法也将失效,建议不需要时直接销毁对象。
最低0.47元/天 解锁文章
2168





