2
0
new-words/README.md

36 lines
3.5 KiB
Markdown
Raw Permalink Normal View History

2024-06-04 13:33:13 +03:00
[![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)
# Практическая работа. New Words
В данном практическом задании предлагается дописать существующий проект Android приложения, а именно реализовать возможность сохранения списка английских слов, введённых пользователем, в текстовый файл.
1. В разметке приложения должны присутствовать элементы, указанные в [табл. 1](#table1). Все элементы разметки должны быть полностью видны и в случае открытой экранной клавиатуры.
2. Слова вводятся в поле с `id/words_input`, разделяются запятой (с пробелом или без пробела). Необходимо сохранить все введённые слова в файл **`words.txt`** в том же порядке.
3. Каждое слово в файле **`words.txt`** должно находиться на отдельной строке; в файле не должно быть слов, которые не были введены в *EditText*.
4. Создание файла происходит по нажатии на *View* (или любого наследника, например, *Button*) c `id/write_internal` или `id/write_external`.
5. Если было совершено нажатие на *View* c `id/write_internal`, то файл создаётся во внутреннем хранилище. Если было совершено нажатие на *View* c `id/write_external`, то файл создается во внешнем хранилище.
6. На экране должна быть расположена *TextView* с `id/file_content`, в которую по нажатию на любую кнопку рассчитывается количество введённых пользователем слов.
7. Файл должен размещаться в папке с номером текущего месяца (нумерация с 1), которая находится в папке приложения во внутреннем (внешнем) хранилище устройства.
Для получения хранилища используйте функцию:
```java
// Вызов внутри Activity
void foo() {
getExternalFilesDir(null); // Получение пути до внешнего хранилища
getFilesDir().getPath(); // Получение пути до внутреннего хранилища
}
```
Например, при использовании внешнего хранилища путь к файлу может выглядеть так:
```text
/storage/emulated/0/Android/ru.myitschool.lab23/files/3/words.txt
```
| № | тип View | идентификатор |
| - | :------: | ------------- |
| 1 | *View* | `write_internal` |
| 2 | *View* | `write_external` |
| 3 | *TextView* | `file_content` |
| 4 | *EditText* | `words_input` |
<a id="table1">*Таблица 1: Элементы пользовательского интерфейса*</a>