[Unity]Inspectorに無効にできるグループを表示する

  • Day:2012.12.24 21:15
  • Cat:Unity
Inspectorに無効にできるグループを表示するためには
EditorGUI.BeginDisabledGroup
EditorGUI.EndDisabledGroupを使用します。

拡張したいコンポーネントのクラス

using UnityEngine;

public class Pokemon : MonoBehaviour
{
public string Name;
public float Height;
public float Weight;
}
拡張エディタクラス

using UnityEngine;
using UnityEditor;

[CustomEditor(typeof(Pokemon))]
using UnityEngine;
using UnityEditor;

[CustomEditor(typeof(Pokemon))]
public class PokemonEditor : Editor
{
private bool disabled;

public override void OnInspectorGUI()
{
var pokemon = target as Pokemon;

disabled = EditorGUILayout.Toggle("無効かどうか", disabled);

EditorGUI.BeginDisabledGroup(disabled);

pokemon.Name = EditorGUILayout.TextField("名前", pokemon.Name);
pokemon.Height = EditorGUILayout.FloatField("高さ", pokemon.Height);
pokemon.Weight = EditorGUILayout.FloatField("重さ", pokemon.Weight);

EditorGUI.EndDisabledGroup();
}
}

ss01_20130106211003.png
ss02_20130106211003.png

無効にできるグループを使用することで
コントロールが編集可能かどうかを切り替えることができます

Unity Script Reference – EditorGUI.BeginDisabledGroup
Unity Script Reference – EditorGUI.EndDisabledGroup

Comment

Comment Form
公開設定

Trackback


→ この記事にトラックバックする(FC2ブログユーザー)
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。