Unity 6.3
0 онлайн 106 гостей 3 в системе
Вход
UI системы Шаг 251 из 317

UI Компонент документа

Компонент UI Document ссылается на документ UXML и ассет Установки панели. Он служит мостом между документом Scene и документом UXML. Документ UXML определяет структуру UI, в то время как ассет Установки панели управляет отображением.

Создание компонента документа UI

Чтобы создать компонент документа UI, выполните одно из следующих действий.

  • Чтобы добавить компонент UI Документ к существующему GameObject в вашей сцене, выберите Компонент > UI Toolkit > UI Документ.
  • Чтобы создать новый GameObject с предварительно настроенным компонентом Документ UI, выберите GameObject > UI Toolkit > UI Документ.

Подключение UI к панели

Чтобы Подключить UI к панели, в окне Inspector компонента Документ UI настройте компонент Документ UI.

UI Компонент документа
UI Компонент документа
  • Настройки панели: Ассет Настройки панели, отображающий UI.
  • Source Asset: Документ UXML, содержащий UI для отображения.
  • Sort Order: Порядок отображения компонента Документа UI. Чем ниже значение, тем раньше отображается компонент Документа UI.

Отображение нескольких UXML Документов на одной панели

Панель может отображать UI из нескольких компонентов UXML Документа. Это позволяет разбить сложный UIs на меньшие, более управляемые части. Каждый компонент UXML Документа ссылается на другой документ UXML и на один и тот же ассет Настройки Панели.

Каждый компонент UI Документа имеет свойство Sort Order, которое управляет порядком отображения. Дочерние UI компоненты Документа отображаются выше родительских UI компонентов Документа. Сродные UI компоненты Документа (на том же уровне иерархии) отображаются в возрастающем порядке, основанном на их значении Sort Order. Чем ниже значение Sort Order, тем раньше отображается компонент UI Документа.

Примечание: Если к одной и той же панели Установки прикреплено несколько компонентов документа UI, все эти документы имеют общий контекст навигации фокуса. Если они имеют разные Установки панели, навигация не будет автоматически переходить от одного к другому, даже если вы расположите их рядом. Чтобы навигация переходила от одного к другому, вы должны установить focusController в панели Установки на FocusController в компоненте документа UI, к которому вы хотите перейти.

Жизненный цикл UI

Unity грузов a/ UI Источник компонента документа UXML документов, когда она призывает OnEnable() Чтобы убедиться, что визуальное дерево загружается правильно, добавьте логику для взаимодействия с элементами управления внутри дерева. OnEnable() Это означает, что ваш скрипт должен отвечать на OnEnable() и OnDisable() безопасно ссылаться на визуальные элементы из вашего UXML документов.

A UI Компонент документа очищает свое содержимое, когда он отвечает на OnEnable() и OnDisable() методов. Этот подход устраняет UI элементы, которые UI Документ не будет повторно использовать в ближайшее время и эффективно очищает связанные ресурсы. UI Компонент документа не назначен с Настройки панели ассет, он автоматически очищает его содержимое.

Чтобы скрыть элемент UI, который, вероятно, будет вскоре повторно использован или должен быстро появиться, чтобы избежать штрафа за инициализацию, устанавливает display из UIDocument.rootVisualElement на none. Вы также можете использовать это, чтобы скрыть компонент элемента UI, который является частью более большой иерархии UI.

Дополнительные ресурсы