小编Mat*_*ack的帖子

当场景发生变化时如何运行一些代码?

不知道我能解释得如何。我有一个加载时不破坏的脚本,因此它可以在两个场景之间移动。然而,在一个场景(最初创建的场景)中,我需要它在每次重新进入该场景时运行启动函数,因为它会绘制出我的一些 UI。这是供参考的代码:

我可以尝试将其放入新脚本中,但我担心由于我每周只在这个项目上工作几个小时,因此会有一些代码我忘记适应此更改,并且它将不再工作。如何重新调用启动函数,或者做类似的事情?

int spriteIndex = 0;
    foreach (Sprite texture in spriteImages) {

        GameObject button = Instantiate (shopButtonPrefab) as GameObject;
        Image buttonImage = button.GetComponent<Image> ();
        Image[] images = button.GetComponentsInChildren<Image>();

        int newIndex = spriteIndex;
        button.GetComponent<Button> ().onClick.AddListener (() => ChangePlayerSkin (newIndex));
        spriteIndex++;
        foreach (Image image in images) {

            if (image != buttonImage) {
                //button.GetComponentInChildren<Image>().sprite = texture;
                //button.transform.SetParent (shopButtonContrainer.transform, false);
                image.sprite = texture;


                break;
            }
            button.transform.SetParent (shopButtonContrainer.transform, false);
        }

    }
Run Code Online (Sandbox Code Playgroud)

c# unity-game-engine

2
推荐指数
1
解决办法
6864
查看次数

标签 统计

c# ×1

unity-game-engine ×1