5.EditorGUI文本层级标签颜色

5.EditorGUI-文本层级标签颜色


5.1 知识点

EditorGUILayout中的文本控件

private void OnGUI()
{
    // 文本控件
    EditorGUILayout.LabelField("文本标题", "测试内容");
    EditorGUILayout.LabelField("文本内容");
}

EditorGUILayout中的层级、标签选择

Layer:

int变量 = EditorGUILayout.LayerField("层级选择", int变量);

Tag:

string变量 = EditorGUILayout.TagField("标签选择", string变量);

示例代码:

int layer;
string tag;

private void OnGUI()
{
    // 层级标签控件
    layer = EditorGUILayout.LayerField("层级选择", layer);
    tag = EditorGUILayout.TagField("标签选择", tag);
}

EditorGUILayout中的颜色获取

color变量 = EditorGUILayout.ColorField(new GUIContent("标题"),
                                       color变量, 是否显示拾色器(右边是否有吸管吸颜色), 是否显示透明度通道(设置透明度), 是否支持HDR);

示例代码:

Color color;

private void OnGUI()
{
    // 颜色获取控件
    color = EditorGUILayout.ColorField(new GUIContent("自定义颜色获取"),
        color, true, true, true);
}


5.2 知识点代码

Lesson05_EditorGUI_文本层级标签颜色

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

public class Lesson05_EditorGUI_文本层级标签颜色 : MonoBehaviour
{
    void Start()
    {
        #region 知识点一 EditorGUILayout中的文本控件

        //EditorGUILayout.LabelField("文本标题", "文本内容");
        //EditorGUILayout.LabelField("文本内容");

        #endregion

        #region 知识点二 EditorGUILayout中的层级、标签选择

        //Layer
        //  int变量 = EditorGUILayout.LayerField("层级选择", int变量);
        //Tag
        //  string变量 = EditorGUILayout.TagField("标签选择", string变量);

        #endregion

        #region 知识点三 EditorGUILayout中的颜色获取

        //color变量 = EditorGUILayout.ColorField(new GUIContent("标题"),
        //                                      color变量, 是否显示拾色器(右边是否有吸管吸颜色), 是否显示透明度通道(设置透明度), 是否支持HDR);

        #endregion
    }
}

MyEditorGUILearnWindow

using System.Collections;
using System.Collections.Generic;
using UnityEditor;
using UnityEngine;

public class MyEditorGUILearnWindow : EditorWindow
{
    [MenuItem("编辑器拓展教程/MyEditorGUILearnWindow")]
    private static void OpenMyEditorGUILearnWindow()
    {
        MyEditorGUILearnWindow win = EditorWindow.GetWindow<MyEditorGUILearnWindow>("EditorGUI知识讲解窗口");
        //win.titleContent = new GUIContent("EditorGUI知识讲解窗口");
        win.Show();
    }

    #region Lesson05_EditorGUI_文本层级标签颜色

    int layer;
    string tag;
    Color color;

    #endregion

    private void OnGUI()
    {
        //窗口中的控件相关绘制 逻辑处理相关的内容
        //EditorGUI相关的控件 同样还是需要在OnGUI当中进行实现 才能被显示出来

        #region Lesson05_EditorGUI_文本层级标签颜色

        //文本控件
        EditorGUILayout.LabelField("文本标题", "测试内容");
        EditorGUILayout.LabelField("文本内容");

        //层级标签控件
        // layer = EditorGUILayout.LayerField(layer);//这样可能别人看不明白是选择什么的。建议加个字符串提示
        layer = EditorGUILayout.LayerField("层级选择", layer);
        // tag = EditorGUILayout.TagField(tag);//这样可能别人看不明白是选择什么的。建议加个字符串提示
        tag = EditorGUILayout.TagField("标签选择", tag);

        //颜色获取控件
        color = EditorGUILayout.ColorField(new GUIContent("自定义颜色获取"),
            color, true, true, true);

        #endregion
    }
}


转载请注明来源,欢迎对文章中的引用来源进行考证,欢迎指出任何有错误或不够清晰的表达。可以在下面评论区评论,也可以邮件至 785293209@qq.com

×

喜欢就点赞,疼爱就打赏