我正在开发聊天应用程序,我已经设计了虚拟聊天记录。但我坚持如何根据它的日期来分组消息,当我们向下滚动时,日期指示器就像最新的应用程序一样贴在顶部位置。你能告诉我方式,我怎么能做到这一点?我附上了一些截图来详细说明我的问题。如何创建类似whatsapp的节标题列表?
1
A
回答
1
把你的头在你的自定义lisview适配器布局,并检查每次你当前的消息日期和以前的消息日期。如果日期相同,那么隐藏您的标题,否则显示您的标题。请看下图:
holder.tvDate.setText(chatMessage.getDate());
if (position > 0) {
if (chatMessages.get(position).getDate().equalsIgnoreCase(chatMessages.get(position - 1).getDate())) {
holder.header.setVisibility(View.GONE);
} else {
holder.header.setVisibility(View.VISIBLE);
}
} else {
holder.header.setVisibility(View.VISIBLE);
}
0
简单。就在头视图添加到您的ListView
TextView textView = new TextView(context);
textView.setText("Hello. I'm a header view");
listView.addHeaderView(textView);
更新:
到目前为止,要做到这一点最简单的方法是嵌入日期标题视图中的每一项。然后,您在bindView中所需做的就是将上一行的日期与此行的日期进行比较,如果日期相同,则隐藏日期。事情是这样的:
String thisDate = cursor.getString(dateIndex);
String prevDate = null;
// get previous item's date, for comparison
if (cursor.getPosition() > 0 && cursor.moveToPrevious()) {
prevDate = cursor.getString(dateIndex);
cursor.moveToNext();
}
// enable section heading if it's the first one, or
// different from the previous one
if (prevDate == null || !prevDate.equals(thisDate)) {
dateSectionHeaderView.setVisibility(View.VISIBLE);
} else {
dateSectionHeaderView.setVisibility(View.GONE);
}
1
+1
NC。它为我工作 –
+0
快乐编码! –
相关问题
- 1. 如何在Android中创建类似WhatsApp的聊天消息块?
- 2. Firebase数据库如何从节点创建列表,如WhatsApp聊天页面
- 3. 如何创建Google Latitude类似标记?
- 4. 如何创建一个类似Google的建议下拉列表?
- 5. 如何创建类似Facebook的重叠标题/内容
- 6. 如何创建一个类似标题的JTable,并将其用作JTexPane标题?
- 7. 创建类似于whatsapp的消息历史(objective-c)
- 8. 在Rails框架中创建一个类似Whatsapp的模型。
- 9. 如何创建一个类似于iOS中的WhatsApp中的多行导航栏?
- 10. 如何从标题和细节类中创建的Json
- 11. 创建类似img标签
- 12. 如何创建类列表?
- 13. 如何在wix中创建类似控件的列表?
- 14. 如何创建类似Android Youtube应用的列表?
- 15. 如何在ASP.NET中创建带节和标题的表?
- 16. 为离子应用程序创建类似whatsapp的表情符号按钮
- 17. 如何在android中创建类似iPhone联系人列表的列表?
- 18. 创建列表/节点类Python
- 19. 创建表的列标题动态
- 20. 如何创建一个类似于.net中的列表的索引类?
- 21. 如何从Android中创建类似ScrollView(列表音乐,列表设置)?
- 22. 如何在节点红色中创建类似mqtt-broker helper
- 23. 从类似列表中创建一个有序列表
- 24. 如何创建类的变量列表
- 25. C#如何创建类的列表
- 26. 我如何创建类似的excel?
- 27. 如何创建类似的聊天iMessage?
- 28. 如何创建类似库的视图
- 29. 如何创建类似http://api.example.com的URL
- 30. 如何创建许多类似的ViewControllers
,你可以看到上面的截图,有不止一个头的昨天,今天和列表视图中只包含一个头@saurav –
看到最后的编辑。它可能会帮助你 –