Приложение чата - обновление последней строки
Я создаю приложение чата. Когда я получаю новый чат с сервера, я обновляю список, добавляя последнюю строку в список. Но как только я отправляю сообщение, я добавляю его в список. Когда сообщение отправлено, я получаю ответ от сервера. Мне нужно обновить сообщение об успехе в последней строке списка, не добавляя новую строку.
Я вставляю блок кода из класса адаптера
@Override
public View getView(int position, View convertView, ViewGroup parent) {
if (type == TYPE_MESSAGE) {
view = inflater.inflate(R.layout.message_list_view, null);
if(msg.equals("Seen")) {
// need to change the status here. Dont add new row
return view;
}else if(msg.equals("Not Seen")) {
// need to change the status here. Dont add new row
return view;
} else if(msg.equals("Received message")){
// need to change the status here. Dont add new row
return view;
} else {
// else add new row and add new chat message
}
return view;
}
Кто-нибудь может дать мне решение?
Заранее спасибо. Sundeep.S.
2 ответа
Обновите существующий объект сообщения, который использовался в списке, и уведомите адаптер списка, что набор данных изменился следующим образом:
YourCrazyAdapter adapter = ((YourCrazyAdapter) listView.getAdapter());
adapter.notifyDataSetChanged();
Поскольку источник не предоставлен, я могу только попытаться
Сначала выберите последний элемент и установите обновление его значения. Тогда позвони yourAdapter.setNotifyDatasetChanged()
и это сделано.