ReorderableListGUI.Title("names"); ReorderableListGUI.ListField(mNamesProp); serializedObject.ApplyModifiedProperties(); } } 最终效果: 只需把序列化字段名称传给Rotorz.ReorderableList就可以在GUI显示了。 下载地址: https://bitbucket.org/rotorz/reorderable-list-editor-field-for-unity...
1、自定义绘制List对象 2、使用serializedObject来修改参数的话Unity会自动有各种帮助函数,例如自动添加Undo功能 3、如果直接修改参数的话,需要使用EditorUtility.SetDirty来告诉Unity需要保存数据 4、BeginChangeCheck()和EndChangeCheck()会检测它们之间的GUI有没有被修改,如果修改了的话可以据此修改参数 5、Undo.RecordOb...
算了,后面写完了,整个工程传下吧,具体的使用网上都有,注意所有的实现要放在ONGUI里面,ongui是每一帧都会调用。 这里主要是用到了一个ONGUI的界面搭建,和触屏位置移动。
public class TestEditor : Editor { SerializedProperty m_list; ReorderableList reorderableList; private void OnEnable() { m_list = serializedObject.FindProperty("list"); reorderableList = new ReorderableList(serializedObject, m_list, true, true, true, true); } public override void OnInspectorGUI()...
也就是说,我们每帧去获取这四个数据,把四个数据放在同一个结构里,然后这个结构放在一个list里。 我因为只是做个demo,所以数据就模拟生成了。 可以看到。为了显示的时候直观一点,我把随机区域稍微区分了一下,这样看起来好看点,像第一个图那样。 2.数据可视化 ...
class in UnityEditor 描述 EditorGUI的自动布局版本。 静态函数 BeginFadeGroup开始一个可隐藏/显示的组,并且过渡将生成动画。 BeginHorizontal开始一个水平组并找回其矩形。 BeginScrollView开始一个自动布局的滚动视图。 BeginToggleGroup开始一个垂直组,带有可一次性启用或禁用所有控件的开关。
Unity内置Editor的IMGUI模式能够满足日常扩展,大多数情况下EditorGUILayout提供的控件,和布局方法BeginVertical,BeginHorizontal,配合大量的内置控件,可以满足快速开发需求。另外Untiy也提供了TreeView,ReorderableList这样的复杂组件。个人体会下来,大多数开发情况下,会倾向于这种选择:能使用自动布局体系的EditorGUILayout的就不会...
EditorWindow.GetWindow<ItemsLibraryEditor>(); } void OnEnable() { serializedObject = new SerializedObject(this); _Properties = new List<Prop>(); } void OnGUI() { defaultColor = GUI.backgroundColor; var collection = GameObject.Find("EquipmentManager").GetComponent<EquipmentManager>().ItemCollecti...
8.2 ReorderableList 构造方法 8.3 一个使用的例子 --- 8.3.1 元素高度的计算 EditorGUI.GetPropertyHeight 接口 9. SerializedProperty 10.细说 Editor/EditorWindow API【待更】 11.AssetDataBase 【待更】 12. C# IO的应用【待更】 13. C# Attribute标签 & Reflect反射的应用 13.1 Attribute 标签 与 元数据...
五、控件属性(GUILayoutOption) 结语 Reference: 前言 总目录传送:李恒:Unity Editor 编辑器扩展功能详解(1) 目录索引 下一章节: Unity Editor 编辑器扩展功能详解(3) EditorGUI/EditorGUILayout(上) GUI/GUILayout 主要是用于Game视图的基本UI信息显示与逻辑操作,例如 假设这是一个全局时间控制面板 这在某些插件/...