Version: 2022.2

TypeCache.GetTypesDerivedFrom

切换到手册
public static TypeCache.TypeCollection GetTypesDerivedFrom ();
public static TypeCache.TypeCollection GetTypesDerivedFrom (Type parentType);

参数

parentType 类或接口的类型。

返回

TypeCollection 返回派生的类型的集合。

描述

获取从 **T** 类型派生的类型的集合。

通过此方法可以快速访问 Unity 域程序集中派生自特定类或实现特定接口的所有类。基类或接口可为通用类型。

using UnityEditor;

public class Example { static void ScanAssetPostprocessors() { var extractedTypes = TypeCache.GetTypesDerivedFrom<AssetPostprocessor>(); foreach (var editors in extractedTypes) { //... } } }

或用于实现特定接口的类。

using UnityEditor;

public interface IExampleInterface {}

public class Example { static void ScanInterfaceImplementers() { var extractedTypes = TypeCache.GetTypesDerivedFrom<IExampleInterface>(); foreach (var editors in extractedTypes) { //... } } }

**注意:**返回的 TypeCollection 为只读,具有线程安全性。

Copyright © 2023 Unity Technologies
优美缔软件(上海)有限公司 版权所有
"Unity"、Unity 徽标及其他 Unity 商标是 Unity Technologies 或其附属机构在美国及其他地区的商标或注册商标。其他名称或品牌是其各自所有者的商标。
公安部备案号:
31010902002961