如何使用气泡中的时间戳创建聊天活动

时间:2015-01-08 10:18:34

标签: android android-listview timestamp chat

我想创建一个聊天活动,用户可以在其中发送和接收消息。 发送者消息右边是带有时间戳的气泡,接收到的消息留在带有时间戳的布雷中。

到目前为止我所做的是我创建了一个聊天应用程序,它正常工作,我收到了正确的消息并在左边收到了消息,但我不知道如何在泡泡中添加时间戳,就像whatsapp

请帮助它对我非常重要。

3 个答案:

答案 0 :(得分:1)

使用以下代码获取当前时间:

 DateFormat df = new SimpleDateFormat("HH:mm");
 Calendar calobj = Calendar.getInstance();
 System.out.println(df.format(calobj.getTime()));

答案 1 :(得分:0)

有点晚了但也许有人还需要它。请考虑在以下场景中,我以编程方式设置gravitytextAlignment,具体取决于气泡的位置,向左或向右。 这就是我设法做到这一点的方式:

普通视图

Normal View

启用布局边界

Layout boundaries enabled

XML

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
    android:id="@+id/chat_wrapper"
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content">

  <RelativeLayout
      android:id="@+id/message_wrapper"
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      android:layout_marginTop="10dip">

    <TextView
        android:id="@+id/message_text"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:minWidth="100dip"
        android:paddingBottom="5dip"
        android:textColor="#000000"/>

    <TextView
        android:id="@+id/message_date"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignEnd="@+id/message_text"
        android:layout_below="@+id/message_text"
        android:textColor="#000000"
        android:textSize="9sp"/>

  </RelativeLayout>

</LinearLayout>

其他信息

背景是我以编程方式设置的9补丁图像,可以通过简单的搜索找到。经过测试:

  • 三星Galaxy S4
  • Android 22.0.1

答案 2 :(得分:0)

我已经从androidhive链接下载了代码 你必须改变以下两个布局文件

list_item_message_right.xml. 
list_item_message_left.xml.

在上面的布局文件中为时间戳添加新的textview,然后在MessageListAdapter class

中设置它们的值时间戳值
    lblFrom.setText(m.getFromName());

//set time stamp here