2.3 KiB
2.3 KiB
EditorExtension 自定义工具栏项目模块手册
模块概述
ToolBarExtension 目录在 Toolbar 框架之上实现了一组项目级工具栏元素:
EditorQuickToolBarLocalizationDropdownFieldResourceModeDropdownFieldSwitchSceneToolBarBuildSettingWindow(当前源码为注释模板)
适用场景
- 快速切换语言、资源模式与场景。
- 把项目工具统一收口到主工具栏。
- 自动调度
EditorToolFunctionAttribute标记的方法。
快速上手
这些类型均通过 MainToolbarElementAttribute 自动挂载,无需手动注册。
可调用 API
类型:AlicizaX.Editor.Extension.EditorQuickToolBar
源码:Packages/com.alicizax.unity.editor.extension/Editor/ToolBarExtension/EditorQuickToolBar.cs
InitializeElement():初始化工具下拉按钮。
类型:LocalizationDropdownField
源码:Packages/com.alicizax.unity.editor.extension/Editor/ToolBarExtension/LocalizationDropdownField.cs
InitializeElement():初始化语言切换下拉框。InvokeOnValidateInScene():强制刷新场景中所有UXTextMeshPro的编辑器预览。
类型:AlicizaX.Editor.Extension.ResourceModeDropdownField
源码:Packages/com.alicizax.unity.editor.extension/Editor/ToolBarExtension/ResourceModeDropdownField.cs
InitializeElement():初始化资源模式下拉框。
类型:SwitchSceneToolBar
源码:Packages/com.alicizax.unity.editor.extension/Editor/ToolBarExtension/SwitchSceneToolBar.cs
InitializeElement():初始化场景切换按钮并监听场景切换。
类型:BuildSettingWindow
- 说明:当前源码整体注释,无生效公开 API,可作为未来扩展模板。
详细使用说明
EditorQuickToolBar
- 从
EditorToolFunctionAttributeCollector.Attributes读取菜单项。 - 点击菜单后通过反射执行静态方法。
LocalizationDropdownField
- 读取语言列表并写入
EditorPrefs。 - 切换后会刷新场景里的
UXTextMeshPro文本预览。
ResourceModeDropdownField
- 提供
Editor / Offline / Host / Webgl四种模式。 - 模式结果通过
EditorPrefs持久化。
SwitchSceneToolBar
- 默认扫描
Assets/Bundles/与Assets/Scenes/下的场景。 - 切换前会检查当前场景未保存状态。