Andrey Skripkin
844a9980eb
All checks were successful
Merge core/template-android-project to this repo / merge-if-needed (push) Successful in 14s
4.3 KiB
4.3 KiB
Практическая работа. Конвертация единиц измерения
В данном практическом задании предлагается дописать существующий проект-заготовку Android приложения для осуществления конвертации единиц измерения длины.
Детально продумайте архитектуру приложения и старайтесь следовать принципам проектирования. Измените код существующих классов и интерфейсов, добавьте новые классы, дополните разметку, ресурсы и манифест, чтобы приложение обладало следующими особенностями:
- Значения в полях EditText моментально пересчитываются при вводе пользователем некоторого числа в соответствии с единицами измерения.
- Конвертация производится во все единицы измерения длины с номерами lower – upper включительно (см. табл. 1), значения границ интервала передаются в стартовую активность при запуске приложения.
- Все элементы разметки должны отображаться без прокрутки.
- Гарантируется, что всегда в интервал номеров для показа на экране попадает текстовое поле с меткой метра. Максимальное значение, вводимое в поле с метрами, указано в табл. 1. Точность проверки: 1e-5.
- Значения элементам TextView присваиваются согласно значениям массива строковых ресурсов (string-array) с названием
text_view_captions
. - При нажатии на TextView текущее значение соответствующего поля EditText копируется в буфер обмена.
№ | TextView text (default) | TextView text (en) | EditText tag | Максимальное значение |
---|---|---|---|---|
0 | Дюйм | Inches | et_inch |
10^{15} |
1 | Ярд | Yards | et_yard |
10^{14} |
2 | Фут | Feet | et_foot |
10^{14} |
3 | Миля | Miles | et_mile |
10^{10} |
4 | Иоттаметр | Yottametres | et_yottametre |
10^{3} |
5 | Зеттаметр | Zettametres | et_zettametre |
10^{4} |
6 | Эксаметр | Exametres | et_exametre |
10^{5} |
7 | Петаметр | Petametres | et_petametre |
10^{6} |
8 | Тераметр | Terametres | et_terametre |
10^{7} |
9 | Гигаметр | Gigametres | et_gigametre |
10^{8} |
10 | Мегаметр | Megametres | et_megametre |
10^{9} |
11 | Километр | Kilometres | et_kilometre |
10^{10} |
12 | Гектометр | Hectometres | et_hectometre |
10^{11} |
13 | Декаметр | Decametres | et_decametre |
10^{12} |
14 | Метр | Metres | et_metre |
10^{13} |
15 | Дециметр | Decimetres | et_decimetre |
10^{14} |
16 | Сантиметр | Centimetres | et_centimetre |
10^{15} |
17 | Миллиметр | Millimetres | et_millimetre |
10^{16} |
18 | Микрометр | Micrometres | et_micrometre |
10^{17} |
19 | Нанометр | Nanometres | et_nanometre |
10^{18} |
20 | Пикометр | Picometres | et_picometre |
10^{19} |
21 | Фемтометр | Femtometres | et_femtometre |
10^{20} |
22 | Аттометр | Attometres | et_attometre |
10^{21} |
23 | Зептометр | Zeptometres | et_zeptometre |
10^{22} |
24 | Иоктометр | Yoctometres | et_yoctometre |
10^{23} |
Таблица 1. Элементы пользовательского интерфейса