3.3 Управление с помощью условий

Вскоре после начала разработки вы захотите отображать элементы в зависимости от каких-либо условий. Например, показывать кнопку "Выйти", если пользователь вошел в систему или изменять цвет кнопки если пользователь навел курсор.

Определение условий

Условие состоит из двух частей:

  1. Непосредственно условие, которое определяет свойства, изменяемые в пункте 2. В примере выше условием будет "Текущий пользователь не вошел в систему"/"Current user isn't logged in".

  2. Свойства, которые нужно изменить, когда элемент видит условие, заданное в пункте 1. В таком случае, элемент будет невидим.

Условие задаётся с помощью "Конструктора выражений/"Expression Composer". Вам ничего не нужно печатать, наоборот, использовать выпадающие меню, которые покажут возможные параметры. Помните, что условие должно быть выражением с результатом типа да/нет, в противном случае вы получите сообщение об ошибке. Если вы хотите, чтобы вид кнопки менялся при наведении мышки, условие должно быть "На эту кнопку наведена мышь"/"This Button is hovered".

При работе с элементами в Редакторе вы можете кликнуть по надписи ON/OFF для искусственного переключения элемента в нужное состояние в целях редактирования. Это не повлияет на элемент.

Если для элемента выполняются несколько условий, то все они будут применены. Если два или более условий имеют противоречащие свойства (например, одно и то же свойство по-разному изменяется в соответствии с двумя или более условиями) , то сработает последнее. В таком случае, вы можете управлять порядком условий кликая по надписи "сдвинуть вверх"/"move up" или "сдвинуть вниз"/"move down".

Пользовательские состояния

В большинстве случаев условия затрагивают данные из базы данных, в главе Работа с данными (!!!ЛНК!!!) рассматриваются ключевые понятия использования данных. Важным понятием является понятие "Пользовательского состояния"/"Custom State" элемента. Это также будет описано в указанной главе; в двух словах, эта функция позволяет назначить элементу любой тип данных и использовать это состояние для задания условий. Например, состояние "отображается" на уровне страницы может иметь тип "да/нет", и вы можете использовать какие-то действия для изменения этого значения. Используя это состояние в условии, можно контролировать видимость сразу многих элементов, используя всего одно значение. Это наиболее часто встречающийся метод для разработки сложных интерфейсов. Для более подробной информации по пользовательским состояниям обратитесь в соответствующую главу.

Отладка во время работы

Так как для элемента может быть задано более одного условия, несколько из них могут принять значение "да" для этого элемента. Для того, чтобы понимать поведение элемента в связке с условиями, вам нужно отслеживать по шагам то, как ведет себя элемент. Мы советуем использовать отладчик, чтобы исследовать элемент и выяснить, какое условие сейчас имеет значение "да" и как это влияет на внешний вид элемента. Для больших подробностей читайте главу "Использование отладчика".

Смена состояний

Такие правила смены состояний можно применить только к некоторым визуальным свойствам. Например, изменение текста кнопки не может происходить постепенно, а изменение цвета может.

Last updated