1. 程式人生 > >Unity 自帶函式 Reset() 的使用

Unity 自帶函式 Reset() 的使用

如下圖,Button有4個按鈕 我們可以在程式執行的時候用程式碼動態的修改這些 button 的名字,這樣當然可以,但是需要程式執行,還是會消耗程式的資源,等程式關閉,這些 button 的名字又會回到向下圖一樣的名字,

當然我們還有更簡單的方式,即是Unity 自帶的 Reset()函式,新建一個指令碼掛載到 Content 上,程式碼如下:

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;

public class NewBehaviourScript : MonoBehaviour
{

    private void Reset()
    {
        int count = transform.childCount;
        for (int index = 0; index < count; index++)
        {
            transform.GetChild(index).name = (index + 1).ToString();
            transform.GetChild(index).GetChild(0).GetComponent<Text>().text = null;
            transform.GetChild(index).GetComponent<Image>().color = new Color(55f, 55f, 55f, 0.5f);
        }
    }
}

你會發現一個神奇的事,當你指令碼拖上去的時候,這些 button的名字,text值,顏色,瞬間變了,神奇吧,都不需要你執行程式,這個時候你就可以把指令碼刪了,已經不需要這個指令碼了,

指令碼上去的瞬間圖(不需要執行程式):

指令碼刪掉之後的圖: