Редактировать ввод текста в массив - PullRequest
0 голосов
/ 29 мая 2018

Контекст: я пытаюсь создать приложение, которое позволяет мне иметь несколько текстов для редактирования (в формате списка дел).Я использую линейный макет с представлением прокрутки внутри него, чтобы позволить пользователям иметь столько заметок, сколько им нужно.

Вопрос: Как я могу поместить каждый editText в массив, кроме того, как можноЯ помещаю строковое содержимое каждого editText в массив.

Любая помощь будет высоко ценится!

Ответы [ 2 ]

0 голосов
/ 29 мая 2018

Вы можете получить все дочерние представления родительского макета в массиве.используйте что-то, как показано ниже.передать представление родительского макета для следования функции

SparseArray<Edittext> array = new SparseArray<Edittext>();
.
.
.
private void findAllEdittexts(ViewGroup viewGroup) {

    int count = viewGroup.getChildCount();
    for (int i = 0; i < count; i++) {
        View view = viewGroup.getChildAt(i);
        if (view instanceof ViewGroup)
            findAllEdittexts((ViewGroup) view);
        else if (view instanceof Edittext) {
            Edittext edittext = (Edittext) view;
            array.put(edittext.getId(), edittext);
        }
    }

}

Чтобы получить весь текст edittexts, вы можете зациклить этот массив и сохранить его в другом массиве или списке, используя gettext для каждого дочернего элемента.

0 голосов
/ 29 мая 2018

Вам нужно получить текст из вашего EditText, как этот

EditText et = FindViewById<EditText>(Resource.Id.et_nnnn);

string a = et.Text;

и затем добавить в ваш массив

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...