Переходы экрана в Appixia Mobile
Можно ли выбрать или объяснить, как переходы экрана работают в приложении, генерируемом appixia? В настоящий момент он, кажется, всегда "скользит" от одного экрана к другому, однако я видел примеры, когда экран переворачивается по вертикальной оси. Я не могу дублировать это поведение.
1 ответ
В настоящее время (Mobile Engine 5 для iOS) возможны два перехода экрана:
Горизонтальный слайд - этот переход появляется всякий раз, когда вы отображаете новый экземпляр действия. Например, у вас есть список элементов и выбран элемент, который отображает новый экземпляр вашего действия "Сведения об элементе". Это новое действие переносится в текущий стек навигации iOS текущей вкладки (вы можете вернуться в стек, нажав кнопку "назад" на панели навигации). Скользящая анимация - это стандартная анимация, выполняемая iOS, когда новый экран помещается в текущий стек навигации. Обратите внимание, что этот переход всегда используется, когда ваше следующее действие находится на той же вкладке.
Перевернутый экран по вертикальной оси - этот переход появляется всякий раз, когда вы отображаете существующий экземпляр действия. Например, у вас есть действие "Корзина" на существующей вкладке, а на другой вкладке (например, на главном экране) вы хотите отображать это существующее действие при каждом нажатии кнопки. Поскольку действие Корзина уже существует (вы не хотите создавать новый экземпляр, а используете существующий), для обозначения этого пользователю используется другой переход. Обратите внимание, что этот переход всегда используется, когда ваше следующее действие находится на другой вкладке.
Как вы можете определить, какой из двух вариантов вы хотите? В обоих случаях вы указываете ссылку на следующий модуль активности, используя Module
поле в конф. Решение о создании нового экземпляра или использовании исходного экземпляра зависит от Singleton
поле этого модуля. 90% ваших модулей будут иметь Singleton = No
, Это всегда поведение по умолчанию, так как вы обычно хотите новые экземпляры. Особые случаи, когда Singleton = Yes
это активность корзины, например. Это потому, что вы хотите всегда использовать один и тот же экземпляр корзины, а не выдвигать новый, когда он связан с.
Если вы хотите, чтобы пример показал разницу, попробуйте следующее: Перейдите на одну из ваших вкладок и выполните упражнение. Singleton = Yes
- один из экранов CMS вашего приложения является хорошим кандидатом. Затем в каком-то другом блочном модуле (например, StaticBlocksView
- например, на главном экране) создайте блок кнопок. В этом блоке кнопок добавить Module
ссылка на деятельность CMS. При каждом нажатии этой кнопки приложение будет переключать вкладки на ваши действия CMS. Если вы измените Singleton = No
на экране CMS новый экземпляр будет нажиматься при каждом нажатии кнопки.