zoukankan      html  css  js  c++  java
  • (转)Unity笔记之编辑器(BeginFadeGroup、BeginHorizontal、BeginScrollView) ... ...

    1. BeginFadeGroup(float value)
    这是EditorGUILayout中的一个函数,用来隐藏/显示在它包含的组中的内容。value则是显示内容的量,范围是0-1 。
    比较下未使用/使用BeginFadeGroup的窗口:

    [code]csharpcode:

    using UnityEngine;
    using System.Collections;
    using UnityEditor; // 编辑器命名空间的引用
    
    public class Editor2 : EditorWindow // 编辑器类
    {
        [MenuItem("EditorDemo/CreateWindow")] // 在编辑器中添加一个菜单
        static void CreateWindow() // 下面这个函数必须是***静态的***
        {
            // 在这里面创建窗口
            EditorWindow.GetWindow(typeof(Editor2), false, "EditorWindow", true);
        }
    
        void OnGUI()
        {
            EditorGUILayout.BeginFadeGroup(0.5f); // 组开始
            GUILayout.Button("Button0"); // 组中的内容,我这写了3个按钮
            GUILayout.Button("Button1");
            GUILayout.Button("Button2");
            EditorGUILayout.EndFadeGroup(); // 组结束
        }
    }
    

    我们把value设置为0.5,就是显示50%;设置为0.75,就是显示75%。

             

    2. BeginHorizontal()

    通常不同的GUI都会一个个向下排列,BeginHorizontal函数可以把组中的内容在同一行显示。(BeginVertical()就是竖轴排列了,用法也一样,我就不赘述了)

    [code]csharpcode:

    using UnityEngine;
    using System.Collections;
    using UnityEditor; // 编辑器命名空间的引用
    
    public class Editor2 : EditorWindow // 编辑器类
    {
        [MenuItem("EditorDemo/CreateWindow")] // 在编辑器中添加一个菜单
        static void CreateWindow() // 下面这个函数必须是***静态的***
        {
            // 在这里面创建窗口
            EditorWindow.GetWindow(typeof(Editor2), false, "EditorWindow", true);
        }
    
        void OnGUI()
        {
            EditorGUILayout.BeginHorizontal(); // 组开始
            GUILayout.Button("Button0"); // 组中的内容
            GUILayout.Button("Button1");
            EditorGUILayout.EndHorizontal(); // 组结束
        }
    }

    比较一下未使用/使用BeginHorizontal的窗口:

        

    3. BeginScrollView()

    BeginScrollView函数可以为宽度或高度较大的GUI提供一个可以滑动的空间。

    [code]csharpcode:

    using UnityEngine;
    using System.Collections;
    using UnityEditor; // 编辑器命名空间的引用
    
    public class Editor2 : EditorWindow // 编辑器类
    {
        Vector2 _scrollPos;
    
        [MenuItem("EditorDemo/CreateWindow")] // 在编辑器中添加一个菜单
        static void CreateWindow() // 下面这个函数必须是***静态的***
        {
            // 在这里面创建窗口
            EditorWindow.GetWindow(typeof(Editor2), false, "EditorWindow", true);
        }
    
        void OnGUI()
        {
            _scrollPos = EditorGUILayout.BeginScrollView(_scrollPos); // 组开始
            EditorGUILayout.LabelField("我是佑丶小贱 我是佑丶小贱 我是佑丶小贱 我是佑丶小贱"); // 组中的内容
            EditorGUILayout.LabelField("I am Xiaojian I am Xiaojian I am Xiaojian I am Xiaojian");
            EditorGUILayout.EndScrollView(); // 组结束
        }
    }
    

    比较下未使用/使用BeginScrollView的窗口:

        

    是不是都很简单,那些想给自己的项目做些插件的童鞋是不是都跃跃欲试了!

  • 相关阅读:
    解决ORA14098分区交换索引不匹配错误
    Oracle等待事件kfk:async disk IO
    Advanced Diagnostic using oradebug dumpvar
    shellscript 06 命令执行顺序
    Linux 备份策略
    shellscript 05 shell输入与输出
    Java video 02
    软件安装:原始码与 Tarball
    shellscript 07 正则表达式介绍
    shellscript 03 后台执行命令
  • 原文地址:https://www.cnblogs.com/backlighting/p/5061581.html
Copyright © 2011-2022 走看看