36 lines
2.5 KiB
Markdown
36 lines
2.5 KiB
Markdown
|
# Практическая работа. Ежедневник
|
|||
|
|
|||
|
В данном практическом задании предлагается дописать существующий проект-заготовку 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 | Очищение полей ввода |
|
|||
|
|
|||
|
*Таблица 2. Критерии оценивания и тесты*
|