1. 程式人生 > 其它 >Unity UI基礎程式碼框架

Unity UI基礎程式碼框架

Unity有兩種UI大類

描述
UGUI主要用於場景內UI,有視覺化編輯器Canvas,適用美術佈局
IMGUI即時模式UI,既可用於場景內,也可用於編輯器面板,沒有視覺化工具,適用程式程式碼佈局

UGUI需要在場景中,通過選單 GameObject | UI | … 子選單建立
建立之後會自動生成Canvas物件
在這裡插入圖片描述
通過Inspector面板可設定UI事件處理,比如Button的OnClick事件
在這裡插入圖片描述
可以執行指定物件的MonoBehavior的行為

IMGUI又分四種類型

名稱空間適用場合佈局規則
GUIUnityEngine場景內指定位置
GUILayoutUnityEngine場景內Layout自動佈局
EditorGUIUnityEditor編輯器面板,增加了編輯器相關的控制元件,比如指定位置
EditorGUILayoutUnityEditor編輯器面板Layout自動佈局

即使模式UI程式碼位置
EditorWindow.OnGUI
Editor.OnSceneGUI
Editor.OnInspectorGUI
MonoBehavior.OnGUI

public class GUITest : MonoBehaviour {
    void OnGUI () {
        // 固定佈局
        GUI.Button (new Rect (25,25,100,30), "I am a Fixed Layout Button"
); // 自動佈局 GUILayout.Button ("I am an Automatic Layout Button"); } }

UGUI參考
https://docs.unity3d.com/Packages/[email protected]/manual/UICanvas.html
GUI參考:
https://docs.unity3d.com/Manual/gui-Basics.html
EditorGUI參考:
https://docs.unity3d.com/Manual/editor-PropertyDrawers.html