zoukankan      html  css  js  c++  java
  • unity, GUIStyle and Skin

    例1:

    using UnityEngine;

    using System.Collections;

    using UnityEditor;

    using System.Collections.Generic;

    [CustomEditor(typeof(CmyScriptableObject))]

    public class myScriptableObjectCustomEditor : Editor 

    {

      public Vector2 scrollPosition = Vector2.zero;

      public int selGridInt = 0;

      public string[] selStrings = new string[] {"item1", "item2", "item3", "item4", "item5", "item6", "item7", "item8"};

      public override void OnInspectorGUI()

      {

        DrawDefaultInspector ();

        CmyScriptableObject data = CmyScriptableObject)target;

        scrollPosition = EditorGUILayout.BeginScrollView (scrollPosition,"box",GUILayout.MaxHeight(90));

        {

          //ref: http://answers.unity3d.com/questions/37223/how-do-i-center-a-gui-label.html

          //ref: http://iaimstar.iteye.com/blog/2222128

          GUIStyle _style = GUI.skin.GetStyle ("MenuItemMixed");

          selGridInt = GUILayout.SelectionGrid(selGridInt, selStrings, 1,_style);

        }

        EditorGUILayout.EndScrollView ();

      }

    }

    例2:

    using UnityEngine;

    using System.Collections;

    using UnityEditor;

    using System.Collections.Generic;

    [CustomEditor(typeof(CmyScriptableObject))]

    public class myScriptableObjectCustomEditor : Editor 

    {

      public Vector2 scrollPosition = Vector2.zero;

      public int selGridInt = 0;

      public string[] selStrings = new string[] {"item1", "item2", "item3", "item4", "item5", "item6", "item7", "item8"};

      public override void OnInspectorGUI()

      {

        DrawDefaultInspector ();

        CmyScriptableObject data = CmyScriptableObject)target;

        scrollPosition = EditorGUILayout.BeginScrollView (scrollPosition,"box",GUILayout.MaxHeight(90));

        {

          //ref: http://answers.unity3d.com/questions/37223/how-do-i-center-a-gui-label.html

          //ref: http://iaimstar.iteye.com/blog/2222128

          GUIStyle _style = GUI.skin.GetStyle ("helpbox");
            _style.onNormal.textColor=Color.blue;

          selGridInt = GUILayout.SelectionGrid(selGridInt, selStrings, 1,_style);

        }

        EditorGUILayout.EndScrollView ();

      }

    }

    自定义skin教程:http://forum.unity3d.com/threads/creating-custom-gui-skins-part-one.113055/

  • 相关阅读:
    Mysql 存储引擎中InnoDB与Myisam的主要区别
    [转]memmove函数
    _Obj* __STL_VOLATILE* __my_free_list
    [转]STL的内存分配器
    [转载]C++ 堆与栈简单的介绍
    [转载]__type_traits
    [转载]C++中 引用&与取地址&的区别
    [转载]delete指针之后应该赋值NULL
    [转载]C++中声明与定义的区别
    学习笔记ubuntu/shell
  • 原文地址:https://www.cnblogs.com/wantnon/p/5101370.html
Copyright © 2011-2022 走看看