Android实现智能聊天机器人

Posted 振华OPPO

tags:

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

项目目录

一、需求分析

1、业务需求分析

Android实现智能聊天机器人_android

2、模型需求分析

Android实现智能聊天机器人_xml_02

3、界面需求分析

Android实现智能聊天机器人_xml_03

二、开发环境介绍

Android实现智能聊天机器人_xml_04

三、聊天功能业务实现

1、申请机器人身份标识

Android实现智能聊天机器人_加载_05

2、搭建聊天界面布局

Android实现智能聊天机器人_Android_06

整个界面最外层采用线性布局,在最大的LinearLayout中先设置了一个TextView用来显示聊天窗口的文本为机器人。

接着在TextView下面放置了一个RelativeLayout,在它里面先放置了一个ListView,用于显示聊天消息列表。

然后放置了一个小的RelativeLayout,里面放置了一个Button和一个EditText,Button在EditText右侧,文本为“发送”,作为发送按钮,EditText则是聊天输入框,在里面输入聊天内容。

这样整个聊天界面的布局文件就搭建好了。如图所示:

Android实现智能聊天机器人_xml_07

activity_main的代码如下:

<?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"/>    <RelativeLayout        android:layout_width="fill_parent"        android:layout_height="fill_parent">        <ListView            android: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"/>        <RelativeLayout            android:id="@+id/rl_bottom"            android:layout_width="fill_parent"            android:layout_height="wrap_content"            android:layout_alignParentBottom="true"            android:background="@drawable/bottom_bg">            <Button                android: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"/>            <EditText                android: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、搭建聊天条目布局

Android实现智能聊天机器人_Android_08

chatting_left_item文件为机器人聊天头像和聊天框显示文件,用于显示机器人的聊天内容。

主要是在RelativeLayout中放置了一个ImageView和一个TextView,ImageView为机器人的头像图片robot_head,TextView 中的 style 设置为 style 文件夹中写好的格式文件 chat_content_style , background选择drawable中的chat_left_selector【鼠标选中消息,背景显示为深绿色,默认显示为绿色】。效果如图:

Android实现智能聊天机器人_Android_09

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"以上是关于Android实现智能聊天机器人的主要内容,如果未能解决你的问题,请参考以下文章

Android--智能机器人聊天

3步就能制作漫画头像的机器人,想拥有一个吗?

小程序智能聊天机器人

3步就能制作漫画头像的机器人,想拥有一个吗?

是否可以为基于谷歌应用引擎的聊天机器人设置头像?

使用 Python 实现一个简单的智能聊天机器人