在Editor中获取Assets目录被选中的物体

[MenuItem("Assets/Test")]
public static void Test()
{
	UnityEngine.Object[] gameObjects = Selection.objects;
}

右键就出现了Test的选项,功能就可以在此函数里面实现。而如果我们想对一堆多选的资源进行操作就可以通过上面的函数中的Selection获得:

Selection类:

Static Properties

activeContext	返回当前上下文对象,如通过SetActiveObjectWithContext设置的那样。 
activeGameObject	返回活动的游戏对象。(检查员显示的那个)。 
activeInstanceID	返回实际对象选择的instanceID。包括预制件,不可修改的物体。 
activeObject	返回实际的对象选择。包括预制件,不可修改的物体。 
activeTransform	返回活动转换。(检查员显示的那个)。  assetGUIDs	返回所选资产的guid。 
gameObjects	返回实际的游戏对象选择。包括预制件,不可修改的物体。 
instanceIDs	来自Scene的实际未过滤选择作为实例ID而不是对象返回。  objects	来自场景的实际未过滤选择。 
selectionChanged	当前活动/所选项目已更改时,会触发委托回调。 
transforms	返回*选择,不包括Prefabs。

Static Methods

Contains	返回当前选择中是否包含对象。
GetFiltered	返回按类型和模式筛选的当前选择。
GetTransforms	允许使用SelectionMode位掩码对选择类型进行细粒度控制。
SetActiveObjectWithContext	选择具有上下文的对象。

SelectionMode

SelectionMode可用于调整Selection.GetTransforms返回的选择。
默认的转换选择模式是:SelectionMode.TopLevel | SelectionMode.ExcludePrefab |
SelectionMode.Editable。

Unfiltered	返回整个选择。
TopLevel	仅返回最顶部的选定变换。将筛选出另一个所选变换的选定子项。
Deep	返回选择的选择和所有子变换。
ExcludePrefab	从选择中排除任何预制件。
Editable	排除任何不得修改的对象。
Assets	仅返回Asset资产目录中的资产对象。
DeepAssets	如果选择包含文件夹,还包括文件层次结构中该文件夹中的所有资源和子文件夹。
上一篇:javascript – 以可编辑的HTML元素编程选择文本?


下一篇:web 获取 文本选中