本文 附加的代碼 demo 就是實現(xiàn)聊天頁面類似微信垫挨,陌陌等聊天信息被泡泡包裹锋拖。使得頁面展示美觀專業(yè)诈悍。 demo中包含了使用的切圖,包含了布局兽埃,以及代碼控制侥钳。本demo只是在UI上的實現(xiàn),不沒有實現(xiàn)完成的通信功能柄错,對于聊天社交app,服務(wù)器交互很重要舷夺。比如消息的緩存苦酱,消息實時接收,延時接收给猾,在線心跳等疫萤。
主頁面就是一個listview:
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
android:orientation="horizontal"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:id?="@+id/MessageBox"
android:layout_alignParentBottom?="true"
>
android:layout_width?="200dip"
android:layout_height?="50dip"
android:layout_marginLeft?="50dip"
android:text?="輸入聊天內(nèi)容"
android:textSize="18dip"
android:id?="@+id/MessageText"
/>
android:layout_width?="wrap_content"
android:layout_height?="50dip"
android:layout_alignParentRight?="true"
android:text?="發(fā)送"
android:textSize="18dip"
android:id?="@+id/MessageButton"
/>
android:id="@+id/list"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_alignParentTop?="true"
android:layout_above?="@+id/MessageBox"
/>
然后實現(xiàn)item,區(qū)分接收和自己發(fā)送
接收的item布局
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:layout_marginLeft="10px"
>
android:orientation="vertical"
android:layout_width="249px"
android:layout_height="wrap_content"
android:background="@drawable/outgoing"
>
android:orientation="horizontal"
android:layout_width="fill_parent"
android:layout_height="22dip"
>
android:id="@+id/messagedetail_row_name"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="#000000"
android:paddingTop="2px"
android:textSize="16dip"
/>
android:id="@+id/messagedetail_row_date"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="#000000"
android:paddingTop="2px"
android:textSize="16dip"
android:layout_marginLeft="60dip"
/>
android:id="@+id/messagedetail_row_text"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:paddingLeft="2px"
android:textColor="#0000DD"
android:textSize="16dip"
/>
android:layout_width="42px"
android:layout_height="42px"
android:layout_gravity="bottom"
android:id="@+id/messagegedetail_rov_icon"
android:background="@drawable/retouxiang"
/>
自己發(fā)送item:
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
>
android:layout_width="42px"
android:layout_height="42px"
android:layout_gravity="bottom"
android:id="@+id/messagegedetail_rov_icon"
android:background="@drawable/retouxiang"
/>
android:orientation="vertical"
android:layout_width="249px"
android:layout_height="wrap_content"
android:background="@drawable/incoming"
>
android:orientation="horizontal"
android:layout_width="fill_parent"
android:layout_height="22dip"
>
android:id="@+id/messagedetail_row_name"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="#000000"
android:paddingTop="2px"
android:textSize="16dip"
/>
android:id="@+id/messagedetail_row_date"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="#000000"
android:paddingTop="2px"
android:textSize="16dip"
android:layout_marginLeft="60dip"
/>
android:id="@+id/messagedetail_row_text"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:paddingLeft="2px"
android:textColor="#0000DD"
android:textSize="16dip"
/>
使用的切圖是.9圖片:
代碼控制就是acticity中代碼和編寫的listview 適配器敢伸。詳細(xì)實現(xiàn)請下載demo查看扯饶。