Используйте Toggle для создания условного UI
В этом примере используется Toggle для создания условного UI.
Примерный обзор
В этом примере создается пользовательское окно Редактора с двумя переключателями. Вы можете использовать переключатели для выполнения следующих действий:
- Показать или скрыть метку
- Активация или деактивация кнопки
Вы можете найти завершенные файлы, созданные этим примером, в хранилище GitHub.
Создание примера
Чтобы создать пример:
Создайте проект Unity с любым шаблоном.
В окне Project создайте папку
Editor.-
В папке
Editorсоздайте файл скрипта C# с именемToggleExampleсо следующим содержимым:using UnityEngine; using UnityEditor; using UnityEngine.UIElements; namespace Samples.Editor.Controls { public class ToggleExample : EditorWindow { private Toggle showToggle; private Toggle activateToggle; private Label labelToShow; private Button buttonToActivate; [MenuItem("Window/ToggleExample")] public static void OpenWindow() { var window = GetWindow<ToggleExample>("Controls: Toggle Sample"); window.minSize = new Vector2(200, 170); } public void CreateGUI() { showToggle = new Toggle("Show label") { value = true }; activateToggle = new Toggle("Active button") { value = true }; labelToShow = new Label("This label is shown when the above toggle is set to On"); buttonToActivate = new Button(() => Debug.Log("Button pressed!")) { text = "Active if above toggle is On" }; rootVisualElement.Add(showToggle); rootVisualElement.Add(labelToShow); rootVisualElement.Add(activateToggle); rootVisualElement.Add(buttonToActivate); showToggle.RegisterValueChangedCallback(evt => labelToShow.visible = evt.newValue); activateToggle.RegisterValueChangedCallback(evt => buttonToActivate.SetEnabled(evt.newValue)); } } } Чтобы попробовать пример, в меню выберите Окно > ToggleExample.