Andrey Limasov
a005caa34d
All checks were successful
Merge core/template-android-project to this repo / merge-if-needed (push) Successful in 1m7s
39 lines
2.9 KiB
Markdown
39 lines
2.9 KiB
Markdown
[![Android Studio version](https://img.shields.io/endpoint?url=https%3A%2F%2Fsicampus.ru%2Fgitea%2Fcore%2Fdocs%2Fraw%2Fbranch%2Fmain%2Fandroid-studio-label.json)](https://sicampus.ru/gitea/core/docs/src/branch/main/how-upload-project.md)
|
||
|
||
# Практическая работа. Ежедневник
|
||
|
||
В данном практическом задании предлагается дописать существующий проект-заготовку Android приложения, имитирующего ведение ежедневника.
|
||
|
||
Измените код существующих классов и интерфейсов, дополните разметку, ресурсы и манифест, чтобы приложение отвечало следущим требованиям:
|
||
|
||
1. Интерфейс приложения должен содержать элементы, перечисленные в табл. 1.
|
||
2. При запуске приложения все текстовые поля для ввода данных должны быть пустыми, в них должна отображаться подсказка.
|
||
3. По нажатии на кнопку «`Сохранить`» в случае отсутствия информации о названии события появляется *Snackbar* c текстом «`Введите название события!`» (без кавычек).
|
||
4. По нажатии на кнопку «`Сохранить`» в случае указания названия события появляется диалоговое окно с кнопкой «`OK`» и текстом, как представлено ниже.
|
||
```
|
||
Записано!
|
||
Событие: title
|
||
Дата: date
|
||
Время: time
|
||
Заметки: notes
|
||
```
|
||
5. Дата выводится в формате: `дд.мм.гггг`.
|
||
6. После нажатия на кнопку «`Сохранить`» все текстовые поля очищаются.
|
||
|
||
| № | View type | id | hint | text |
|
||
| :-: | ------- | -- | ---- | ----- |
|
||
| 0 | *EditText* | `event_title_user_input` | Название события | |
|
||
| 1 | *EditText* | `event_time_user_input` | Время события | |
|
||
| 2 | *EditText* | `event_notes_user_input` | Заметки к событию | |
|
||
| 3 | *CalendarView* | произвольно | – | |
|
||
| 4 | *Button* | произвольно | – | Сохранить |
|
||
|
||
*Таблица 1. Элементы пользовательского интерфейса*
|
||
|
||
| № | Тест | Балл | Проверка |
|
||
|:-:|-----------| -- |----------------------------|
|
||
| 1 | mainTest | 1 | Показ AlertDialog |
|
||
| 2 | emptyTest | 1 | Очищение полей ввода |
|
||
| 3 | hasHint | 1 | Проверка наличия подсказок |
|
||
|
||
*Таблица 2. Критерии оценивания и тесты* |