我正在创建一个聊天应用。当我从服务器获得新的聊天时,我通过在列表中添加最后一行来更新列表。但是一旦我发送消息,我就把它添加到列表中。当消息发送时,我从服务器获得成功响应。我需要在列表的最后一行更新成功消息,而不添加新行。
我正在粘贴适配器类的代码块
@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. Don't add new row
}else if(msg.equals("Not Seen")) {
// need to change the status here. Don't add new row
} else if(msg.equals("Received message")){
// need to change the status here. Don't add new row
} else {
// else add new row and add new chat message
}
return view;
}
有人可以给我一个解决方案吗?
答案 0 :(得分:1)
更新适配器并致电:
adapter.notifyDataSetChanged();
getListView().setSelection(adapter.getCount()-1);
答案 1 :(得分:0)
您可以使用listView.getChildAt(listview.getAdapter().getCount()-1)
- 最后一行返回的视图。