DroidScript

Свойства и методы активности в Sketchware

© 2016-2018 Автор материалов - Александр Страшко admin@starport.ru
DroidScript
инструменты для мобильной разработки

Свойства и методы активности в Sketchware

© 2016-2018 Автор материалов - Александр Страшко admin@starport.ru
Sketchware  
Дата изменения 23.12.2017

После создания нового проекта в рабочем поле редактора вида отображается пустой макет главной активности приложения с панелью действий, на которой расположен заголовок ActionBar. Мобильное приложение может состоять из одной или нескольких активностей, каждая из которых представляет собой исполняемую единицу, имеющую жизненный цикл, и графическое представление в виде формы, на которой располагаются элементы интерфейса.

Выберите кнопку и попробуйте поместить её на панель действий макета. Это сделать не получится, в отличии от размещения кнопки на серой области под ней, которая является корневой формой активности. Посмотрим, что эта форма собой преставляет. В редакторе вида зайдите в меню, ссылка на которое находится на панели действий, и выберите пункт "Show Source code". На экране отобразится код разметки главной активности, находящийся в файле main.xml.

Исходный код главной активности

В коде расположен безымянный линейный компоновщик LinearLayout, который имеет вертикальное упорядочивание и будет занимать всё доступное ему пространство на экране. Принципиальное значение имеет то, что этот компоновщик не имеет идентификатора. Следовательно, невозможно получить доступ к его свойствам и, соответственно, невозможно выполнять групповые операции над элементами, расположенными на нём. Почему это важно? Договоримся корневой компоновщик называть формой, чтобы не возникло путницы.

Предположим, в целях ускорения создания вида на форму добавили 10 элементов. Если потребуется изменить фон под ними, сделать часть из них невидимыми или удалить их, то эти действия приведут к необходимости выполнения большого объёма работы, так как придётся её выполнять последовательно над каждым объектом по отдельности. В первом случае придётся на форму добавить компоновщик, изменить его фон и перетащить на него все элементы, во втором случае - изменить видимость каждого элемента, а в третьем - переместить в корзину каждый элемент. При размещении элементов в компоновщиках эти и другие операции потребуют на порядок меньше движений. По этой причине возьмите за правило добавлять элементы в компоновщики, а не на форму.

В нижней части редактора вида находится выпадающий список, предназначенный для переключения между активностями (вкладка VIEW), создания пользовательских видов (вкладка CUSTOM VIEW).

Редактор вида

Нажмите кнопку "+" для создания нуюного вида. При добавления активности нужно задать имя в поле View name и настроить её свойства:

Создайте новую активность с выбранными параметрами. Перейдите на главную активность. Добавьте на форму компоновщик Layout(V) и кнопку в него, при нажатии на которую будет происходить переключение на новую активность. Выполните следующие действия:

  1. Перейдите на вкладку EVENT и cоздайте там новое намерение (компонент Intents), назвав его setView.
  2. Выберите событие onClick кнопки и в редакторе блоков присоедините к нему блоки Intent setScreen и StartActivity Intent из категории Component.
  3. Выберите в блоках намерение и вид.

Редактор вида

Запустите приложение для проверки переключения активности при нажатии на кнопку.

Все данные в активности имеют локальную область видимости и для передачи данных из одной активности в другую можно использовать файловый компонент File или намерение Intent.

Для передачи данных с использованием намерения воспользуйтесь блоком Intent putExtra key value, в который нужно поместить данные в виде пары ключ:значение. Для получения данных по ключу используйте блок Activity getExtra key.

Активности в Sketchware не имеют свойств, редактируемых в редакторе вида, но их заголовок можно изменить в редакторе блоков при помощи блока Acrivity set title.

Активности имеют обработчики для событий:

Последовательность наступления событий следующая:

Активности также могут называть видом (View) или экраном (Screen). Это не совсем корректно, но позволяет лучше понять, что они собой представляют. Переход на другой экран звучит понятнее, по сравнению с переходом на другой вид или активность.

Внешний вид мобильного приложения представляет собой не окно, как в оконных операционных системах, а набор автономно действующих экранов: на одном экране заставка, на другом - поле ввода логина и пароля, на третьем - настройки программы, на четвёртом - результат выполнения кода и т.д. Как правило, одна активность содержит одно действие, для выполнения которого используется один экран. Это упрощает взаимодействие пользователя с мобильным приложением, но нужно помнить о том, что это взаимодействие отличается при использовании мобильного телефона, который служит скорее для просмотра информации, от планшета. Часто об этом забывают (особенно при адаптировании оконных интерфейсов к мобильным) и создают один вид и для телефонов, и для планшетов, что создаёт неудобства при работе на первом или втором.

Sketchware