Я разрабатываю приложение для Android, используя eclipse. У меня есть список, и каждая его строка содержит EditText. Когда я нажимаю на EditText, я хочу сделать две вещи.
1: перезагрузить весь EditText текстами из моего массива данных.
2: Установите текст нажатого EditText в постоянную строку (скажем, «0»).
Для этого я использовал приведенный ниже onclicklisetner для EditText.
myEdittext.setOnClickListener(new View.OnClickListener()
{
@Override
public void onClick(View v)
{
adapter.notifyDataSetChanged();//adapter is my arrayadapter of the listview
EditText clickedText = (EditText)v;
clickedText.setText("0");
}
});
Как вы можете видеть, я использую метод notifyDataSetChanged для перезагрузки EditTexts в списке и метод setText, чтобы установить для щелкнутого текста EditText значение «0».
Но метод setText не работает. Если я прокомментирую строку «adapter.notifyDataSetChanged()», метод «setText» будет работать.
Я также пытался сделать это, вызвав метод setText после задержки (чтобы проверить, запускает ли notifyDataSetChanged новый поток), но потерпел неудачу.
Как я могу заставить оба метода работать в моем методе onClick.
Заранее спасибо.