Мои Уведомления
Привет, !
Мой Аккаунт Мои Финансы Мои Подписки Мои Настройки Выход
Руководство API скрипты

EditorGUI.ObjectField

Объявление

public static Object ObjectField(Rect position, Object obj, Type objType); Устаревший Проверьте документы на предмет использования нового параметра «allowSceneObjects».

public static Object ObjectField(Rect position, string label, Object obj, Type objType); Устаревший Проверьте документы на предмет использования нового параметра «allowSceneObjects»..

public static Object ObjectField(Rect position, GUIContent label, Object obj, Type objType);

public static Object ObjectField(Rect position, Object obj, Type objType, bool allowSceneObjects);

public static Object ObjectField(Rect position, string label, Object obj, Type objType, bool allowSceneObjects);

public static Object ObjectField(Rect position, GUIContent label, Object obj, Type objType, bool allowSceneObjects);

Параметры

position Прямоугольник на экране использовать для поля.
label Необязательная метка перед полем.
obj Объект, который показывает поле.
objType Тип объектов, которые могут быть назначены.
allowSceneObjects Разрешить назначение объектов сцены. См. Описание для получения дополнительной информации.

Возвращает

Object Объект, установленный пользователем.

Описание

Создает поле объекта. Вы можете назначать объекты, перетаскивая объекты или выбирая объект с помощью средства выбора объектов.

Убедитесь, что параметр allowSceneObjects имеет значение false, если ссылка на объект хранится как часть ресурса, поскольку ресурсы не могут хранить ссылки на объекты в сцене. Если ObjectField является частью пользовательского редактора для компонента скрипта, используйте EditorUtility.IsPersistent(), чтобы проверить, находится ли компонент в активе или объекте сцены. См. пример в классе Editor.

Поле объекта в окне редактора.
using UnityEditor; using UnityEngine; using System.Collections; //Выбираем зависимости найденного GameObject public class EditorGUIObjectField : EditorWindow { public GameObject obj = null; [MenuItem("Examples/Select Dependencies")] static void Init() { UnityEditor.EditorWindow window = GetWindow(typeof(EditorGUIObjectField)); window.position = new Rect(0, 0, 250, 80); window.Show(); } void OnInspectorUpdate() { Repaint(); } void OnGUI() { obj = (GameObject)EditorGUI.ObjectField(new Rect(3, 3, position.width - 6, 20), "Find Dependency", obj, typeof(GameObject)); if (obj) if (GUI.Button(new Rect(3, 25, position.width - 6, 20), "Check Dependencies")) Selection.objects = EditorUtility.CollectDependencies(new GameObject[] {obj}); else EditorGUI.LabelField(new Rect(3, 25, position.width - 6, 20), "Missing:", "Select an object first"); } }

Объявление

public static void ObjectField(Rect position, SerializedProperty property);

public static void ObjectField(Rect position, SerializedProperty property, GUIContent label);

public static void ObjectField(Rect position, SerializedProperty property, Type objType);

public static void ObjectField(Rect position, SerializedProperty property, Type objType, GUIContent label);

Параметры

position Прямоугольник на экране использовать для поля.
property Свойство ссылки на объект, которое показывает поле.
objType Тип объектов, которые могут быть назначены.
label Необязательная метка для отображения перед полем. Передайте GUIContent.none, чтобы скрыть метку.

Описание

Создает поле объекта. Вы можете назначать объекты, перетаскивая объекты или выбирая объект с помощью средства выбора объектов.

Вы можете отблагодарить автора, за перевод документации на русский язык. ₽ Спасибо
API скрипты 2021.3