Как заставить EditText правильно работать в ListView? - PullRequest
1 голос
/ 09 июня 2010

Привет всем,

У меня есть ListView, который содержит EditText в каждой строке. У меня также есть Array. Длина Array == Nr строк в ListView.

Я хочу сохранить пользовательский ввод (текст в EditText) в массиве. Например, если я наберу какой-то текст в EditText в первой строке ListView, я хочу, чтобы текст был сохранен в массиве [0]. Но как я могу определить, к какой строке относится EditText? Я могу определить возможность строки, если строка содержит RadioGroup, но не EditText.

Что если я сначала наберу какой-нибудь текст в EditText, а через некоторое время захочу обновить mein Input? Как я могу обновить его?

Большое спасибо!

Ответы [ 2 ]

0 голосов
/ 11 ноября 2011

Кроме того, вы можете сделать что-то вроде этого

//adapter's getView:
final int pos = positon;
EditText et = new EditText(context);

et.setOnKeyListener(new OnKeyListener() {

    public boolean onKey(View v, int keyCode, KeyEvent event) {
        if ((event.getAction() == KeyEvent.ACTION_DOWN) && 
            (keyCode == KeyEvent.KEYCODE_ENTER)) 
        {
            vals[pos] = et.getText().toString();
            return true;
        }
        return false;
    }
});

предупреждение * это идет от головы, не проверено. гарантия не предоставляется.

0 голосов
/ 11 июня 2010

EditText расширяет текст, который расширяет вид.То есть вы должны иметь возможность использовать идентификаторы или теги, не так ли?

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