首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >安卓RecyclerView:聊天项目之间的日期是什么类型的?

安卓RecyclerView:聊天项目之间的日期是什么类型的?
EN

Stack Overflow用户
提问于 2018-04-06 19:21:51
回答 1查看 332关注 0票数 1

大家可能都知道,通常在聊天应用程序中,比如(whatsapp,信使.)您会注意到,聊天项目包括一个日期项目在中间。现在我对此进行了研究,并注意到这与多视图类型所调用的内容有关。

如果它真的是一个多视图类型的东西,那么为什么它是这样工作的。例如,我有一个带有蓝色项目、绿色项目和日期的聊天应用程序,然后我应该这样做:

代码语言:javascript
复制
    public int getItemViewType(int position){

     ItemMessage item = my_list.get(position);

     if(item.getType.equals("blue")){

       return BLUE;

     }else if(item.getType.equals("green")){

       return GREEN;
     }else{
       return 0;
     }  
}

直到这里,我知道什么项目显示蓝色(走向信息)和绿色(即将到来的一个)。

我的问题:关于日期项,它是添加到数据库中的项目吗?还是项目中的视图被隐藏或显示?这些聊天应用程序是如何做到的?

谢谢。

编辑

我知道日期来自服务器,但我在聊天对象之间使用日期对象。我将数据作为json存储在服务器上,如下所示:

代码语言:javascript
复制
      chat_messages
       |
       |
       ---item1
          |
          |----message: "hello"
          |----type: "green"
          |----timestamp:...... 

      ----item2
          |
          |---message: "hey there"
          |---type: "blue"
          |---timestamp:.........

如果我在上面找到的话,我会在回收视图中找到这个

代码语言:javascript
复制
          |-------------
            item 1
          |-------------

                        |----------------
                          item 2
                        |---------------- 

我再次提出的问题是,日期是否也应视为这样一个项目:

代码语言:javascript
复制
         date_item
         |
         |---type: "date"
         |---timestamp: .....  

希望我解释得很清楚。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-04-06 19:41:10

获取请求-> --您现在拥有数据( GREENBLUE类型)。如您所说,数据包含类型和日期。

日期相同,可以是BLUE类型,也可以是GREEN类型。

所以。日期来自服务器。

编辑:不,它不应该,您的项目架构应该如下:

代码语言:javascript
复制
item1
-----------
   message: "hey"
   type: "green"
   date: "13.1.2004"
   timestamp: "..."
   ...
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/49699719

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档