我是ios的新手,我想做聊天部分。我要集成的API。例如聊天列表API,聊天会话API(GET和POST)。我集成了聊天列表API,以显示聊天列表我的任务是,当我单击聊天列表中的一个聊天时,它必须重定向到聊天视图屏幕。我能够执行此操作。但是问题是,如何区分发件人和收件人的消息列表。用XIB设计的聊天视图屏幕。如果有人帮助我做到这一点,那就太好了。
//GET API Response
{
"success": 1,
"status": 200,
"data": {
"conversation": [
{
"id": 6,
"chat_id": 4,
"user_id": 4,
"type": 0,
"message": "Hi mahitha",
"delivered_at": "2019-02-27 14:59:58",
"read_at": "2019-02-27 15:00:03",
"created_at": "2019-02-27 12:26:39"
},
{
"id": 9,
"chat_id": 4,
"user_id": 4,
"type": 0,
"message": "Hello kaveri",
"delivered_at": null,
"read_at": null,
"created_at": "2019-02-27 15:22:11"
},
{
"id": 33,
"chat_id": 4,
"user_id": 4,
"type": 0,
"message": "125698532",
"delivered_at": null,
"read_at": null,
"created_at": "2019-03-05 15:11:38"
},
{
"id": 34,
"chat_id": 4,
"user_id": 4,
"type": 0,
"message": "1256985322565",
"delivered_at": null,
"read_at": null,
"created_at": "2019-03-05 15:16:39"
}
],
"current_page": 1,
"last_page": 1,
"next_page_url": null
}
}
//POST API RESPONSE
{
"success": 1,
"status": 200,
"data": {
"conversation": {
"chat_id": 10,
"user_id": 4,
"type": "0",
"message": "123456",
"created_at": "2019-03-08 12:14:18",
"id": 55
}
}
}
答案 0 :(得分:0)
发布一些您尝试过的代码将在此处提供更多帮助。但这通常是实现聊天界面的方式。
步骤1:使用2个自定义单元格创建一个tableview
。一个用于发送消息,另一个用于接收消息。
第2步:为每个单元格设计一个标签,并使发送的消息正确对齐,以白色背景色查看。使收到的消息左对齐,以绿色作为背景色进行查看。
第3步:在您的JSON中添加一个名为message_type
的附加密钥,其中每种消息的类型为字符串sent
或received
。 (如果需要将消息显示为已发送消息或已接收消息,则可以通过这种方式进行区分)
第4步:从会话屏幕导航到聊天屏幕后。提取JSON并将每条消息添加到数据模型数组。
第5步:从tableview
中的该数组中加载数据,然后使用message_type
键使用sent message custom cell
或received message custom cell
。这样会将所有已发送的邮件添加到带有白色背景的右侧,并将所有已接收的邮件添加到带有绿色背景的左侧。