О разработке мобильных приложений в Android studio: часть 2

№75-2,

технические науки

В статье рассматриваются наиболее используемые при разработке мобильных приложений элементы управления, входящие в Android Studio.

Похожие материалы

В предыдущей части статьи были рассмотрены особенности работы в интегрированной среде разработки Android Studio [1, 2], используемой для создания мобильных приложений (или mobile application), предназначенных для запуска на устройствах, работающих под управлением операционной системы Android (смартфонах, планшетах и т. п.) [3].

Рассмотрим наиболее используемые элементы управления (View или компоненты), размещаемые на оконных формах (или Activity) мобильных приложений, имеющиеся в Android Studio:

1. TextView. Данный элемент управления представляет собой надпись, размещаемую на форме. Текст для надписи хранится в свойстве text. Группа свойств под общим именем textAppearance позволяет форматировать текст надписи, а именно:

  • fontFamily — позволяет выбрать шрифт для надписи, по умолчанию стоит шрифт sans-serif;
  • textSize — задает размер символов, по умолчанию 14sp, где sp — это специальная единица измерения в Android, что означает масштабируемые независимые пиксели;
  • textColor — задает цвет символов;
  • textStyle — позволяет выбрать стиль (полужирный, курсивный и пр.);
  • textAlignment — устанавливает выравнивание текста внутри элемента управления (по левому краю, по центру и пр.).

Свойства layout_width и layout_height позволяют задать фиксированный размер компонента, измеряемый в единицах измерения dp (от англ. пиксели независимые от плотности).

Для того чтобы поменять текст надписи из программы, необходимо выполнить команду setText, предварительно связав элемент управления с соответствующей ему переменной внутри программы. Например:

TextView tV;tV = (TextView) findViewById(R.id.textView);tV.setText("Текст");

где в скобках записан текст на замену.

В примере строка findViewById(R.id.textView) обеспечивает связь компонента с ID, равным textView, с переменной tV.

Android Studio автоматически подключает нужные библиотеки в раздел import. Так, при обращении к элементу TextView, в раздел import добавляется следующая строка:

import android.widget.TextView;

2. Button. Данный элемент управления представляет собой командную кнопку, действия над которой можно запрограммировать.

В свойстве text хранится текст, отображаемый на кнопке, а свойство onClick позволяет привязать метод для обработки события, возникающего при щелчке мышкой по кнопке.

3. editText. Данный компонент представляет собой однострочное поле для ввода текста, который хранится в свойстве text.

Свойство inputType позволяет выбрать тип вводимых символов: цифры (Number), числа со знаком (NumberSigned), числа с точкой (NumberDecimal) и пр.

В свойстве hint можно задать текст подсказки.

Для того чтобы записать введенный в editText текст в переменную типа String, следует выполнить команду getText с последующим приведением результата к строковому типу, используя для этого метод toString().

Например:

EditText eT;eT = (EditText) findViewById(R.id.editText);s = eT.getText().toString();

4. checkBox. Данный элемент управления представляет собой поле для установки/снятия флажка и используется для выбора каких-либо значений.

Метод setChecked устанавливает и (или) снимает флажок, а метод isChecked() — проверяет установлен флажок или снят. Например:

CheckBox cB;cB = (CheckBox) findViewById(R.id.checkBox);cB.setChecked(true);if (cB.isChecked()) {  setTitle("Флажок установлен");} else {  setTitle("Флажок снят");}

В примере метод setTitle позволяет менять заголовок формы без прямого обращения к ней по имени.

5. radioButton. Данный элемент управления представляет собой, так называемую, радиокнопку, свойства которой, по сути, аналогичны checkBox.

Как самостоятельные элементы управления радиокнопки используют редко, так как их предпочтительнее использовать в составе группы.

6. radioGroup. Данный компонент позволяет объединить несколько радиокнопок, размещенных на форме, в одну группу, что дает возможность автоматического выбора (т. е. установки) только одной из них.

Компонент radioGroup относится к невизуальным компонентам, т.е. он не отображается на форме и работать с ним можно только программно.

Так, объединение компонентов radioButton в группу осуществляется путем перетаскивания их на компонент radioGroup, который необходимо предварительно разместить на форме.

При необходимости можно выбрать (т.е. установить флажок) одну из радиокнопок, используя для этого свойство checked.

На рис. 1 изображена форма приложения с расположенными на ней элементами управления: TextView, Button, EditText, CheckBox, RadioButton, radioGroup. Радиокнопки при этом объединены в группу.

Пример формы мобильного приложения
Рисунок 1. Пример формы мобильного приложения

7. ProgressBar. Данный View представляет собой полоску, на которой отображается прогресс выполнения какого-либо процесса. Свойство progress хранит текущее значение прогресса, которое меняется в процессе работы приложения.

Для установки значения прогресса из программы следует использовать метод setProgress(), например:

ProgressBar pB;pB = (ProgressBar) findViewById(R.id.pBar);pB.setProgress(50);

где pBar — ID, или имя, компонента ProgressBar, расположенного на форме.

8. SeekBar. Данный элемент управления представляет собой бегунок, который можно перемещать в процессе работы с приложением для выбора того или иного значения.

Свойства SeekBar во многом аналогичны свойствам ProgressBar.

Чтобы получить текущее положение бегунка необходимо выполнить команду getProgress(), например:

SeekBar sB;sB = (SeekBar) findViewById(R.id.seekBar);int pos = sB.getProgress();

9. gridView. Данный View позволяет добавить на форму таблицу для ввода/вывода в ее ячейки различных значений.

Для работы с таблицей необходимо описать адаптер, определяющий ее содержимое. Адаптер содержит метод getView, который вызывается автоматически при обращении к ячейкам таблицы и формирует значение ячейки в зависимости от заданного шаблона.

Подключение адаптера к таблице осуществляется с помощью метода setAdapter.

Например, следующий код заполняет таблицу gridView случайными значениями, предварительно сгенерированными в строковый массив mas для передачи его адаптеру в качестве одного из параметров:

GridView gV;gV = (GridView) findViewById(R.id.gridView);mas = new String[8];for (int i = 0; i < 8; i++) {  mas[i] = String.valueOf(Math.random());}GridAdapter gA = new GridAdapter(this, mas);gV.setAdapter(gA);

Индексация ячеек таблицы начинается с 0.

Рассмотренные в статье элементы управления (или View) являются наиболее используемыми при создании мобильных приложений, в то время как Android Studio содержит гораздо большее количество компонентов, предназначенных для реализации различных задач программирования и позволяющих создавать сложные приложения с расширенным набором функций и возможностями.

Список литературы

  1. Антипин А.Ф. Организация эффективной работы преподавателей в условиях рейтинговой системы обучения // Прикладная информатика. 2014. № 3. С. 48-59.
  2. Седова Н.А., Седов В.А. Методы оценки качества полученных решений // Южно-Сибирский научный вестник. 2012. № 1. С. 88–91.
  3. Степашина Е.В. Оптимизация финансовых показателей предприятия на основе нейросетевой модели // Информационные системы и технологии. 2014. № 5. С. 34-42.