实战聊天窗口的实现

Posted csschn

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了实战聊天窗口的实现相关的知识,希望对你有一定的参考价值。

  今天参考书上的例子,自己也实现了一个相对美观的聊天界面,过程如下:

一、第一步制作用于显示聊天内容的图片,使用SDK目录下的Tools下的draw9patch.bat来制作Nine-Patch图片,以便适用于各种分辨率的终端;

  需要注意的是在制作好之后保存的时候不能把保存的名称改掉,一定要带上保存时自动加上的.9,并且在引用的时候名称不用写.9即可,切记!在这浪费了一个多小时

二、编写主界面activity_main.xml,放一个ListView和LinearLayout,LinearLayout下面再放一个EditText(用于编写消息)和Button(用于发送消息)

技术分享
 1 <?xml version="1.0" encoding="utf-8"?>
 2 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
 3     android:id="@+id/LinearLayout1"
 4     android:layout_width="match_parent"
 5     android:layout_height="match_parent"
 6     android:orientation="vertical"
 7     android:background="#d8e0e8" >
 8 
 9     <ListView
10         android:id="@+id/msg_list_view"
11         android:layout_width="match_parent"
12         android:layout_height="0dp"
13         android:layout_weight="1"
14         android:divider="#0000" >
15     </ListView>
16     
17     
18     <LinearLayout 
19         android:layout_width="match_parent"
20         android:layout_height="wrap_content">
21         <EditText android:id="@+id/input_text"
22             android:layout_width="0dp"
23             android:layout_height="wrap_content"
24             android:layout_weight="1"
25             android:hint="Type something here"
26             android:maxLines="2"/>
27         
28         <Button 
29             android:id="@+id/send"
30             android:layout_width="wrap_content"
31             android:layout_height="wrap_content"
32             android:text="Send"/>
33         
34     </LinearLayout>
35 </LinearLayout>
activity_main.xml

三、新建消息实体类Msg

技术分享
 1 package com.example.Entity;
 2 
 3 public class Msg {
 4     public static final int TYPE_RECEIVED = 0;
 5     public static final int TYPE_SEND = 1;
 6     private String content;//消息内容
 7     private int type;//消息类型,分为发送(TYPE_SEND)和接收的(TYPE_RECEIVED)
 8     
 9     public Msg(String content, int type) {
10         // TODO Auto-generated constructor stub
11         this.content = content;
12         this.type = type;
13     }
14 
15     public String getContent() {
16         return content;
17     }
18 
19     public int getType() {
20         return type;
21     }
22 
23 }
Msg

 

以上是关于实战聊天窗口的实现的主要内容,如果未能解决你的问题,请参考以下文章

《Python多人游戏项目实战》第四节 实现房间功能

《Python多人游戏项目实战》第四节 实现房间功能

Netty网络聊天 聊天室实战

Golang✔️实战✔️ 聊天室 ☢️建议手收藏☢️

Golang✔️实战✔️ 聊天室 ☢️建议手收藏☢️

iOS逆向实战二:微信聊天界面实现飘气球效果