2017-02-21 111 views
-2

我正在開發像whatsapp /聚會的android聊天應用程序。更新列表視圖中的單行項目android

我在做什麼是,一旦消息發送到服務器,消息的狀態是「發送」。當我收到對該消息的確認時,我想將該消息的狀態更改爲「已交付」。

怎麼做?

代碼發送到服務器

ChatMessageModel chatMessageModel = new ChatMessageModel(); 
          chatMessageModel.setId(nextId); 
          chatMessageModel.set_id(null); 
          chatMessageModel.setGroupId(groupID); 
          chatMessageModel.setMessage(message); 
          chatMessageModel.setSenderUserId(user.getUserId()); 
          chatMessageModel.setSenderDisplayName(""); 
          chatMessageModel.setDateSent(null); 
          chatMessageModel.setMessageType("message"); 
          chatMessageModel.setStatus("sent"); 
          chatMessageService.saveIndMessage(chatMessageModel); 
          mChatMessageCustomAdapter.add(chatMessageModel); 
          mChatMessageCustomAdapter.notifyDataSetChanged(); 

從服務器接收ACK後之前,代碼是

chatMessageModel.set_id(msg.getString("_id")); 
         chatMessageModel.setGroupId(msg.getString("groupId")); 
         chatMessageModel.setMessage(msg.getString("message")); 
         chatMessageModel.setSenderUserId(msg.getString("senderUserId")); 
         chatMessageModel.setSenderDisplayName(msg.getString("senderDisplayName")); 

chatMessageModel.setStatus( 「遞送」);

****這裏如何更新狀態以「交付」 ***

回答

0

使用update方法,而不是您的適配器和更新內部的特定位置添加,然後用notifyitemchanged()。