Обновление данных в адаптере ListView
Здравствуйте! Есть чат на android в двух вариантах: групповой и личный. Есть такой адаптер который работает в обоих чатах:
public override View GetView (int position, View convertView, ViewGroup parent)
{
var item = this._bubbleList [position];
var view = (convertView ??
this._context.LayoutInflater.Inflate (
Resource.Layout.bubble,
parent,
false)) as LinearLayout;
TextView message = view.FindViewById<TextView> (Resource.Id.list_bubble_message);
message.Text = item.message;
if (item.left == false) {
view.SetGravity (GravityFlags.Right);
message.SetBackgroundResource (Resource.Drawable.mymessage);
} else {
view.SetGravity (GravityFlags.Left);
message.SetBackgroundResource (Resource.Drawable.friendmessage);
}
return view;
}
С групповым чатом все легко, все сообщения выводятся в один и тот же ListView, но в случае с личным чатом (тет-а-тет) есть проблема, при переходе от беседы с одним человеком, в беседу с другим, все сообщения из прошлой беседы показываются в новой. Как можно разделить эти List View, что бы для каждой беседы был свой. Все еще усложняет то, что зарание не известно сколько будет этих бесед у пользователя.
Источник: Stack Overflow на русском