Component.TryGetComponent
Declaration
public bool TryGetComponent(out T component);Параметры
| Параметр | Описание |
|---|---|
| компонент | Аргумент выхода, содержащий компонент или null. |
Возвращаемое значение
логическое Возвращает true, если компонент найден, false в противном случае.
Описание
Получает компонент указанного типа, если он существует.
TryGetComponent пытается извлечь компонент типа T на том же GameObject, что и компонент, на котором он вызван. Более подробную информацию об использовании и поведении поиска см. в Component.GetComponent. Разница между этим и Component.GetComponent в том, что TryGetComponent не выделяет в Редакторе, если запрашиваемый компонент не существует.
Примечание: Этот метод не ищет в иерархии родительского или дочернего GameObjects, а ограничивается GameObject, к которому он прикреплен. Поскольку он только проверяет, что GameObject активен или неактивен, TryGetComponent возвращает запрошенный компонент независимо от того, активен GameObject или нет. Активное состояние влияет только на методы, обходящие иерархию, такие как Component.GetComponentInChildren, которые принимают параметр includeInactive.
using UnityEngine;
public class TryGetComponentExample : MonoBehaviour { void Start() { if (TryGetComponent<HingeJoint>(out HingeJoint hinge)) { hinge.useSpring = false; } } }
Declaration
public bool TryGetComponent(Type type, out Component component);Параметры
| Параметр | Описание |
|---|---|
| тип | Тип компонента для поиска. |
| компонент | Аргумент выхода, содержащий компонент или null. |
Возвращаемое значение
логическое Возвращает true, если компонент найден, false в противном случае.
Описание
Нетиповая версия этого метода.
Эта версия TryGetComponent не столь эффективна, как версия Generic (выше), так что вы должны использовать ее только в случае необходимости.