一下用script修改按鈕 icon圖示,一下子修改按鈕文字(text)。
當時沒有馬上記下來,現在倒是記憶有些模糊了。
趁還沒完全忘記,趕緊記錄下來吧!

- 目標:中間這個Play圖示,按下去之後,要改為Stop圖示。
我使用的是ButtonHolographic這個prefab。
可以去HoloToolkit-Example → UX → prefabs → ButtonHolographic 找到。

步驟上是這樣的:
1. 事先準備好圖示(ex. play, stop),也許是.jpg 或者是 .png,需事先匯入到asset裡面。
2. 在script裡面寫好全域變數去接,變數型態須為Texture。如上圖1所示。
3. 如上圖2所描寫的,在Unity裡面會顯示PlayIcon, StopIcon欄位,你可以點擊右邊的小圓點(圖3所示),將圖檔指定進去。
4. 在script裏頭寫全域變數btnIcon,變數型態是GameObject,那是預備去接舞台上即將被修改圖示的按鈕。同樣的在Unity介面上也要先把即將被修改的按鈕指定進去。例如:UIButtonSquareIcon。
5. 在script裡面撰寫以下程式碼,就可以把舞台上的按鈕圖示,改為你要的圖示了。
btnIcon.GetComponent<MeshRenderer>().material.mainTexture = stopIcon;
6. 同樣的,修改按鈕文字的方式,分為以下小步驟:
(1) 先在script裏頭寫全域變數btnName,變數型態是GameObject
(2) 在Unity介面上,把舞台上將被修改的text指定進去。
(3) 用script寫,文字要修改成什麼。以下範例是修改成"Stop"
btnName.GetComponent<TextMesh>().text = "Stop";
概念整理:
其實需要掌握的是變數型態,以及該類別下的屬性的階層關係。
其餘的就只是把該指定的檔案或文字,指定到正確位置而已。
圖示的參考出處
→ 參考論壇 [前往]
文字的參考出處
→ 參考文件Unity Manual [連結]
→ 參考影片Unity tutorial [連結]
沒有留言:
張貼留言