Android实现智能聊天机器人

少年击剑更吹箫,剑气箫心一例消。这篇文章主要讲述Android实现智能聊天机器人相关的知识,希望能为你提供帮助。
项目目录

  • ??一、需求分析??
  • ??1、业务需求分析??
  • ??2、模型需求分析??
  • ??3、界面需求分析??
  • ??二、开发环境介绍??
  • ??三、聊天功能业务实现??
  • ??1、申请机器人身份标识??
  • ??2、搭建聊天界面布局??
  • ??3、搭建聊天条目布局??
  • ??4、封装聊天信息实体类??
  • ??5、编写聊天列表适配器??
  • ??6、实现智能机器人通信??
  • ??四、项目效果??
  • ??五、项目总结??
  • ??六、源码下载??
一、需求分析1、业务需求分析
2、模型需求分析
3、界面需求分析
二、开发环境介绍
三、聊天功能业务实现1、申请机器人身份标识
2、搭建聊天界面布局
整个界面最外层采用线性布局,在最大的LinearLayout中先设置了一个TextView用来显示聊天窗口的文本为机器人。
接着在TextView下面放置了一个RelativeLayout,在它里面先放置了一个ListView,用于显示聊天消息列表。
然后放置了一个小的RelativeLayout,里面放置了一个Button和一个EditText,Button在EditText右侧,文本为“发送”,作为发送按钮,EditText则是聊天输入框,在里面输入聊天内容。
这样整个聊天界面的布局文件就搭建好了。如图所示:

activity_main的代码如下:
< ?xml version="1.0" encoding="utf-8"?> < LinearLayoutxmlns:android="http://schemas.android.com/apk/res/android"xmlns:app="http://schemas.android.com/apk/res-auto"xmlns:tools="http://schemas.android.com/tools"android:layout_width="match_parent"android:layout_height="match_parent"tools:context=".MainActivity"android:orientation="vertical"> < TextViewandroid:layout_width="match_parent"android:layout_height="45dp"android:gravity="center"android:background="#0cc4e5"android:text="机器人"android:textColor="@android:color/white"android:textSize="20sp"/> < RelativeLayoutandroid:layout_width="fill_parent"android:layout_height="fill_parent"> < ListViewandroid:id="@+id/list"android:layout_width="fill_parent"android:layout_height="fill_parent"android:layout_above="@+id/rl_bottom"android:cacheColorHint="@android:color/black"android:divider="@null"android:listSelector="@null"android:transcriptMode="alwaysScroll"/> < RelativeLayoutandroid:id="@+id/rl_bottom"android:layout_width="fill_parent"android:layout_height="wrap_content"android:layout_alignParentBottom="true"android:background="@drawable/bottom_bg"> < Buttonandroid:id="@+id/btn_send"android:layout_width="60dp"android:layout_height="40dp"android:layout_alignParentRight="true"android:layout_centerVertical="true"android:layout_marginRight="10dp"android:background="@drawable/btn_send_selector"android:text="发送"android:textColor="@android:color/black"android:textSize="14sp"/> < EditTextandroid:id="@+id/et_send_msg"android:layout_width="fill_parent"android:layout_height="40dp"android:layout_centerVertical="true"android:layout_marginLeft="10dp"android:layout_marginRight="10dp"android:layout_toLeftOf="@+id/btn_send"android:background="@drawable/send_msg_bg"android:singleLine="true"android:textColor="@android:color/black"android:textSize="18sp"/> < /RelativeLayout> < /RelativeLayout> < /LinearLayout> 复制代码

3、搭建聊天条目布局
chatting_left_item文件为机器人聊天头像和聊天框显示文件,用于显示机器人的聊天内容。
主要是在RelativeLayout中放置了一个ImageView和一个TextView,ImageView为机器人的头像图片robot_head,TextView 中的 style 设置为 style 文件夹中写好的格式文件 chat_content_style , background选择drawable中的chat_left_selector【鼠标选中消息,背景显示为深绿色,默认显示为绿色】。效果如图:

【Android实现智能聊天机器人】chatting_left_item代码如下:
< ?xml version="1.0" encoding="utf-8"?>
< LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity"
android:orientation="vertical">

< TextView
android:layout_width="match_parent"
android:layout_height="45dp"
android:gravity="center"
android:background="#0cc4e5"
android:text="机器人"
android:textColor="@android:color/white"
android:textSize="20sp"

    推荐阅读