我正在Android上编写聊天客户端,但是我在客户端放置聊天气泡时遇到了一些问题.我的聊天屏幕包含ListView一个文本框和一个底部的发送按钮.对于传出消息,文本ListView在行中保持对齐.对于传入消息,文本ListView在行中右对齐.但是,聊天气泡不会调整为传入消息文本的长度.左对齐的传出消息不会发生此问题.
屏幕截图如下.
图片http://i40.tinypic.com/5fgen6.png
聊天消息文本存储在数据库中,并ListView通过游标适配器显示.聊天文本的对齐是在Java源代码中即时确定的MessageAdapter.两个聊天气泡都是使用Android的九个补丁图片完成的.
下面是我的聊天活动布局,ListView问题是messageHistoryList:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:padding="10dip"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<ListView
android:id="@+id/messageHistoryList"
android:layout_width="wrap_content"
android:layout_height="0px"
android:layout_weight="1"/>
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content" >
<EditText
android:id="@+id/message"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:gravity="top"
android:layout_weight="1"/>
<Button
android:id="@+id/sendMessageButton"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_weight="4"
android:text="Send"/>
</LinearLayout>
</LinearLayout>
Run Code Online (Sandbox Code Playgroud)
ListView行布局:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="wrap_content"
android:layout_height="wrap_content">
<RelativeLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/userAndMessage">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/textUser"
android:textStyle="bold"
android:textColor="@color/blue"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/textMessage"
android:textColor="@color/blue"
android:textStyle="bold"/>
</RelativeLayout>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content" …Run Code Online (Sandbox Code Playgroud) 我正在尝试为 Android 构建一个简单的聊天应用程序(使用本机 SDK),但在为 UI 构建一个漂亮的布局时遇到了一些麻烦,特别是对于 EditText 和 TextView 元素。我想为 Android 创建类似 Whatsapp 应用程序的东西:
目标是在两个元素中创建一个带有尖边的形状。我做了一些研究,发现我必须用 shape 标记构建一个资源文件,并将其添加到android:background属性中。但我就是不知道我将如何创建图像中的那些尖边。任何帮助表示赞赏!