Я начинающий разработчик Android, и у меня проблема с textData в EditText из Expandable ListView;
Итак, я использую SimpleExpandableListViewAdapter.В пользовательском childLayout у меня есть EditText, который использует данные из базы данных в виде текста.В основной активности пользователь может изменить данные, а затем он нажимает кнопку «Применить изменения».Но в button.OnClickListener я могу получить listView EditTexts из значения адаптера, которые не изменены.Таким образом, каждый раз, когда listView отображает одни и те же данные.
Я имею в виду, EditText.getText () возвращает старые данные;
Мне нужно обновлять адаптер каждый раз, когда нажимается кнопка, но я неновые данные отсутствуют.
Вопрос в том, как получить текущий текст EditText в Expandable ListView?Есть ли способ получить каждое значение EditText без указателя адаптера?
Извините, я не могу поделиться всем своим кодом, но это корень моей проблемы:
Этот код не работает:
TimersExpandableListView.setOnFocusChangeListener(new View.OnFocusChangeListener() {
@Override
public void onFocusChange(View v, boolean hasFocus) {
Log.w("editText", "focus changed");
DailyTimersTemperatureEditText = v.findViewById(R.id.timers_daily_child_degrees_editText);
DailyTimersTemperatureEditText.addTextChangedListener(new TextWatcher() {
@Override
public void beforeTextChanged(CharSequence s, int start, int count, int after) {
}
@Override
public void onTextChanged(CharSequence s, int start, int before, int count) {
String newTemperature = DailyTimersTemperatureEditText.getText().toString();
Log.w("new temp", newTemperature);
}
@Override
public void afterTextChanged(Editable s) {
}
});
}
});
"Фокус изменен"там, но журнал «Новая температура» не отображается.
Вот мой адаптер:
final SimpleExpandableListAdapter DailyTimersListAdapter = new
SimpleExpandableListAdapter(context, // this.getContext();
DailyGroupDataList,
R.layout.timers_daily_list_parent_layout,
DailyGroupFrom, GroupDailyTo, //Array of Hashmaps, ParentLayout Array;
NightAndDayChildData, R.layout.timers_daily_list_child_layout,
new String[]{"DayAndNightChildTime", "DayAndNightTemp"},
new int[]{R.id.timers_daily_child_time_textView, R.id.timers_daily_child_degrees_editText}
);
TimersExpandableListView.setAdapter(DailyTimersListAdapter);
Спасибо.