Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ОС. Лаборная работа №1.doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
503.3 Кб
Скачать

18

Ос. Лабораторная работа №1 проетированИе интерфейса пользователя расчетного android-приложения

Цель работы: Научиться проектировать интерфейс расчетных приложений для мобильной платформы Android с использованием языка разметки XML.

Задание на разработку.

Приложение Tip Calculator (Калькулятор чаевых), активность которого показана на рис. 1, вычисляет и отображает чаевые на основании суммы счета в ресторане.

Рисунок 1. Ввод суммы счета и подсчет чаевых: а — начальный интерфейс

пользователя, появляющийся после касания пользователем компонента Bill total и отображения цифровой клавиатуры; б — интерфейс пользователя после ввода выставленного счета на $123,45 и изменения процентной ставки чаевых на 17%

После ввода пользователем суммы счета приложение вычисляет и отображает размер чаевых и величину итогового счета (с учетом чаевых). При этом для расчета чаевых используются три процентные ставки: 10%, 15% и 20%. Пользователь может указать собственную ставку, используемую при расчете чаевых. Для этого нужно переместить ползунок компонента Seekbar, после чего обновляется величина процентной ставки, которая отображается в правой части компонента SeekBar. В качестве заданной по умолчанию пользовательской процентной ставки для чаевых выбрана величина 18%. Это связано с тем, что многие рестораны используют эту процентную ставку для компаний, состоящих из шести человек и более. Предполагаемые величины чаевых и общего счета могут быть изменены пользователем.

Теоретические сведения.

Для взаимодействия с пользователем в интерфейсе приложения используются компоненты EditText, TextView и SeekBar. Эти компоненты включаются в интерфейс с помощью окна представления Android Studio, включая ручное редактирование XML-разметки, используемой для создания UI. Компонент EditText, который часто называется текстовым полем или текстовым окном в других UI-технологиях, — это подкласс компонента TextView. Компонент EditText отображает текст либо принимает текст, вводимый пользователем. Компонент SeekBar, в других UI-технологиях называемый ползунком, графически представляет положение целого числа в диапазоне 0 – 100, которое с помощью ползунка может изменяться пользователем. Для организации взаимодействия между пользователем и интерфейсом пользователя применяются обработка событий и анонимные внутренние классы.

Знакомство с компонентом TableLayout

В приложении, создаваемом в этой главе, для размещения компонентов UI в шести строках и четырех столбцах используется макет TableLayout (рис. 2). Каждая ячейка, определенная объектом TableLayout, может быть пустой или включать один компонент, в качестве которого может выступать другой макет, содержащий другие компоненты.

В строках 0 и 4 на рис. 2 показаны элементы, которые занимают несколько столбцов. Для создания строк используются объекты TableRow. Количество столбцов в TableLayout определяется с помощью объекта TableRow, который содержит большинство компонентов. Высота каждой строки определяется самым высоким компонентом в этой строке (обратите внимание на рис. 2, где строки 1 и 4 короче других строк).

Аналогично ширина столбца определяется наиболее широким элементом этого столбца (если не разрешить «растягивание» столбцов таблицы для заполнения экрана по ширине, в результате чего столбцы становятся шире). По умолчанию компоненты добавляются в строку в направлении слева направо. Можно указать точное положение компонента с помощью нумерации, которая по умолчанию начинается с 0.

Строки и столбцы объекта TableLayout для приложения показаны на рис. 2.

Рисунок 2. Класс TableLayout с подписанными строками и столбцами,

используемый для создания GUI приложения Tip Calculator

На рис. 3 показаны имена всех компонентов UI, применяемых для формирования интерфейса приложения. Используемое соглашение о наименовании предусматривает использование имени класса компонента UI в качестве значения свойства id каждого компонента в XML-разметке и в имени переменной каждого компонента в коде Java.

Рисунок 3. Компоненты UI приложения Tip Calculator, в качестве названий

которых используются значения свойства id

Формирование UI, показанного на рис. 2, должно начинаться с формирования базового макета и элементов управления, потом настраиваются свойства элементов управления, завершая тем самым проект. После добавления компонентов в каждую строку объекта TableLayout настраиваются свойства id и Text этих компонентов (рис. 3). При разработке проекта значения литеральных строк желательно включать в файл strings.xml, который находится в папке res/values приложения. Это полезно в тех случаях, когда понадобится локализовать приложение для его использования на разных языках. Правда, для компонентов TextView с названиями 10%, 15% и 20% строковые ресурсы не понадобятся.

Следует заметить, что добавление компонентов в соответствующие объекты TableRow макета TableLayout производятся с помощью окна Component Tree. Это объясняется тем, что при работе со сложными структурами, например TableLayout, с помощью визуального представления экрана довольно трудно просматривать сложную многоуровневую структуру макета и помещать компоненты на нужный уровень. В окне Component Tree отображается разветвленная структура UI, в связи с чем задача проектирования существенно упрощается. Например, можно выбрать соответствующую строку в TableLayout и добавить в эту строку выбранный вами компонент UI.