1110822 如何讀取Prefab並修改其內容
by 黃國哲 2022-08-22 12:10:15, 回應(0), 人氣(759)
雜記:
目標1 = FindObjectsOfType<Transform>(); 可以顯示擁有Transform這個屬性的物件有幾個
/////////////////////////////////////////////////
由於無法更改Prefab的內容,因此不是真的修改內容,而是將內容儲存在快取區,
然後在運行時將其快取區儲存的值傳送到程式內,暫時的替換掉顯示的值,製造出效果。
這裡使用[System.Serializable]和[SerializeField]和
PlayerPrefs.SetString("ThisitemTip", data.itemTip);
tipinput.text = PlayerPrefs.GetString("ThisitemTip");
這裡的ThisitemTip為自己定義的快取區儲存的檔名。
儲存:
PlayerPrefs.SetString("ThisitemTip", data.itemTip); ,意思是將最後的data.itemTip內容儲存到("ThisitemTip"。
讀取:
tipinput.text = PlayerPrefs.GetString("ThisitemTip");
意思是將"ThisitemTip"的內容輸出到tipinput.text
public void Edit_BTN() //編輯按鈕
{
//PlayerPrefs.SetString("ThisitemTip", data.itemTip);
tipinput.text = PlayerPrefs.GetString("ThisitemTip");
}
data.itemTip是資料原始檔案Prefab;tipinput是文字輸入框,
當按下編輯按鈕,會先儲存 data.itemTip到"ThisitemTip"快取區,
然後輸入文字框內會顯示出"ThisitemTip"的內容
public void Save_BTN() //儲存按鈕
{
data.itemTip = tipinput.text; //按下儲存時,輸入文字框的內容會成為data.itemTip的內容
PlayerPrefs.SetString("ThisitemTip", data.itemTip); //將data.itemTip儲存到"ThisitemTip"
tipinput.text = ""; //清空文字輸入框的內容
}
回應