attrType | 属性类型。 |
assemblyName | 可选程序集名称。 |
FieldInfoCollection 返回一个未排序的 FieldInfo 集合,其中包含标记有 T 属性的字段。如果指定了 assemblyName,则仅返回在此程序集中定义的字段。
检索一个未排序的字段集合,这些字段标记有 T 属性。
此方法提供对从给定程序集或所有 Unity 域程序集加载的所有类字段的快速访问,并标记有特定属性。标记有指定属性的祖先的字段也包含在结果中。结果的顺序未定义。
using UnityEditor; using System; using System.Collections.Generic;
public class Example { class MyAttribute : Attribute {}
[MyAttribute] static int s_MyField;
static void ScanStaticFieldsMarkedWithMyAttribute() { var extractedFields = TypeCache.GetFieldsWithAttribute<MyAttribute>(); foreach (var fi in extractedFields) { if (!fi.IsStatic) continue; //... } } }
注意: 返回的 FieldInfoCollection 是只读且线程安全的。集合中 FieldInfo 的顺序未定义。