一个简易聊天窗口的制作
一、首先是UI界面的设计与制作
如上图所示是我设计的聊天背景与聊天视图,由于我们的聊天框是一张图片,它不可能跟着你的聊天字数内容长短而变化,这时我们需要对此进行处理,9-patchFile功能将图的四边进行拉处理在应用到聊天框就可以使此图片随着你的聊天内容增加而伸展,大大提高了美观的程度。
这是制作出的效果:
可以向任意方向做拉伸。具体的制作方法:将图片贴到drawable目录下保存成.jpg格式然后在图片名称上右击鼠标你就会看见Create 9-patch File这个复选框选中进行操作即可。
下面是我的Msg.xml的代码:
activity.xml的代码:
一个edittext输入框一个button发送按钮。
这就不用我自己赘述了吧,个人有个人的想法,设计属于你自己的聊同安界面布局吧。
二、java逻辑代码
这里建立了三个类文件,分别为:MsgAdapter、Msg、MainActivity。
Msg的代码如下:
Msg类中只有两个字段,content表示消息的内容,type表示消息的类型。其中消息类型有两个值可选,TYPE_RECEIVED表示收到消息,TYPE_SENT表示发出消息。
创建RecyclerView的适配器MsgAdapter代码:
onBindViewHolder(),对消息类型做出判断。
最后是MainActivity的代码:
initmsgs()方法中初始化几条用于RecyclerVIew中显示,发送按钮的点击事件获取Editext中的内容,如内容部位NULL则创建新的Msg对象,并把它添加到msgList列表中去。之后又调用notifyItemInserted()方法用于通知列表有新的数据插入。
至此就完成了…