版本:Unity 6 (6000.0)
语言英语
  • C#

Selection.GetFiltered

建议更改

成功!

感谢您帮助我们提高 Unity 文档的质量。虽然我们无法接受所有提交,但我们确实会阅读用户提出的每个建议更改,并在适用时进行更新。

关闭

提交失败

由于某些原因,您的建议更改无法提交。请<a>稍后再试</a>。感谢您抽出时间帮助我们提高 Unity 文档的质量。

关闭

取消

声明

public static Object[] GetFiltered(Type type, SelectionMode mode);

参数

type 仅检索此类型的对象。
mode 进一步选项以细化选择。

描述

返回根据类型和模式过滤后的当前选择。

对于具有多个type类型组件的选定游戏对象,结果中只会包含第一个组件。
如果typeComponentGameObject的子类,则支持完整的选择模式。
如果type不是ComponentGameObject的子类(例如MeshScriptableObject),则仅支持SelectionMode.ExcludePrefabSelectionMode.Editable

using UnityEngine;
using UnityEditor;

class ToggleActive : ScriptableObject { [MenuItem("Example/Toggle Active of Selected %i")] static void DoToggle() { Object[] activeGOs = Selection.GetFiltered( typeof(GameObject), SelectionMode.Editable | SelectionMode.TopLevel);

foreach (GameObject obj in activeGOs) { obj.SetActive(!obj.activeSelf); } } }