本文整理汇总了C#中UnityEngine.Component.GetComponentsInChildren方法的典型用法代码示例。如果您正苦于以下问题:C# Component.GetComponentsInChildren方法的具体用法?C# Component.GetComponentsInChildren怎么用?C# Component.GetComponentsInChildren使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类UnityEngine.Component
的用法示例。
在下文中一共展示了Component.GetComponentsInChildren方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: NotifyStencilStateChanged
/// <summary>
///
/// <para>
/// Notify all IMaskable under the given component that they need to recalculate masking.
/// </para>
///
/// </summary>
/// <param name="mask"/>
public static void NotifyStencilStateChanged(Component mask)
{
List<Component> list = ListPool<Component>.Get();
mask.GetComponentsInChildren<Component>(list);
for (int index = 0; index < list.Count; ++index)
{
if (!((Object) list[index] == (Object) null) && !((Object) list[index].gameObject == (Object) mask.gameObject))
{
IMaskable maskable = list[index] as IMaskable;
if (maskable != null)
maskable.RecalculateMasking();
}
}
ListPool<Component>.Release(list);
}
示例2: UIItem
/**
* empty slot constructor
*/
public UIItem(Component itemElem)
{
Text TG = null, TK = null, TT = null, TN = null;
foreach (Text t in itemElem.GetComponentsInChildren<Text>())
{
if (t.name.Equals("Text_G"))
TG = t;
else if (t.name.Equals("Text_K"))
TK = t;
else if (t.name.Equals("Text_T"))
TT = t;
else if (t.name.Equals("Text_N"))
TN = t;
}
_itemElem = itemElem;
_itemElemBorderImage = itemElem.GetComponent<Image>();
_origColor = _itemElemBorderImage.color;
_but = itemElem.GetComponent<Button>();
_value = new UICurrency(TG, TK, TT, TN);
}
示例3: NotifyStencilStateChanged
public static void NotifyStencilStateChanged(Component mask)
{
List<Component> results = ListPool<Component>.Get();
mask.GetComponentsInChildren<Component>(results);
for (int i = 0; i < results.Count; i++)
{
if ((results[i] != null) && (results[i].gameObject != mask.gameObject))
{
IMaskable maskable = results[i] as IMaskable;
if (maskable != null)
{
maskable.RecalculateMasking();
}
}
}
ListPool<Component>.Release(results);
}
示例4: FindDependency
public override object FindDependency(Component comp, FieldInfo field)
{
if (SearchParents) {
comp = comp.transform.root;
}
if (IsContainerType(field)) {
Type type;
if (field.FieldType.IsArray) {
type = field.FieldType.GetElementType();
} else if (typeof(IList).IsAssignableFrom(field.FieldType)) {
if (field.FieldType.GetGenericArguments().Length >= 1) {
type = field.FieldType.GetGenericArguments()[0];
} else {
Debug.LogError(string.Format("{0} expected at least one generic argument from the type {1}, use List<T>", this, field.FieldType));
return null;
}
} else {
Debug.LogError("Shouldn't be here");
type = null;
}
if (Recursive) {
return CreateArrayOrList(field, ConvertToGOArray(comp.GetComponentsInChildren(type, IncludeInactive)));
}
return CreateArrayOrList(field, ConvertToGOArray(comp.GetComponents(type)));
}
if (Recursive) {
return comp.GetComponentInChildren(field.FieldType);
}
return comp.GetComponent(field.FieldType);
}