Получение контента от editText - PullRequest
0 голосов
/ 07 августа 2011

В моем приложении у меня есть tableLayout со многими editTexts в нем. Когда я нажимаю кнопку «Сохранить», я хочу получить доступ ко всем значениям, введенным в editTexts. Я назначил идентификаторы во время выполнения при создании таблицы. Теперь, как я могу получить доступ к значениям из editTexts при нажатии кнопки «Сохранить» ...? Я использовал что-то вроде ниже, чтобы назначить идентификаторы,

for(int i=0;i< no_of_rows ;i++)
  for(int j=0;j<5;j++)
  {   
    ...............
    assignment.setId(i+j);
    .............
  }

Может кто-нибудь предложить решение ..?

Ответы [ 2 ]

0 голосов
/ 07 августа 2011

Другим хорошим решением является циклическое переключение всех дочерних элементов некоторого макета, поэтому вам не нужно устанавливать никаких специальных идентификаторов. Просто попробуйте:

LinearLayout layout = (LinearLayout) findViewById(R.id.layout);
child_count = layout.getChildCount();

for (int i=0; i<child_count; i++)
{
    EditText text = (EditText) layout.getChildAt(i);
    // do work with text
}

С некоторым другим кодом вы можете сделать это для любой другой иерархии макета.

0 голосов
/ 07 августа 2011

Как насчет чего-то вроде:

ArrayList<String> strings = new ArrayList<String>();
for(int i=0;i< no_of_rows ;i++)
  for(int j=0;j<5;j++)
  {   
    EditText text = (EditText)ActivityName.this.findViewById(i+j);
    strings.add(text.getText().toString());
  }
}

Это даст вам все значения из всех текстов в одном большом массиве.Если это не то, что вы хотите, дайте мне знать, и я посмотрю, смогу ли я изменить код.

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