<pre name="code" class="html">using UnityEngine;
using System.Collections;
using UnityEditor;
[CustomEditor(typeof(MaterialsChangeContainer))] //需要编辑的脚本控件
public class MaterialsChangeContainerEditor : Editor
{
private static GUIContent deleteContent = new GUIContent("Del");
private static GUIContent addContent = new GUIContent("Add");
private SerializedProperty mList;
void OnEnable()
{
//FindProperty找到类中的某个变量
mList = serializedObject.FindProperty("MaterialsChangeInfoList");//MaterialsChangeInfoList 脚本里面的list变量
}
public override void OnInspectorGUI()
{
serializedObject.Update();
EditorGUILayout.PropertyField(mList.FindPropertyRelative("Array.size"));//显示数组长度
for (int i = 0; i < mList.arraySize; i++)
{
EditorGUILayout.BeginHorizontal();
SerializedProperty prop
Unity编辑器之inspector处理
最新推荐文章于 2024-06-11 10:51:40 发布
本文介绍如何在Unity中创建自定义编辑器 Inspector,用于编辑 MaterialsChangeContainer 类的 MaterialsChangeInfoList 列表。通过 EditorGUILayout.PropertyField 显示和操作数组元素,包括增加、删除材料对,并提供详细的操作步骤。
摘要由CSDN通过智能技术生成