聊天系统比较简陋

一个显示框 一个输入框,一个滑动条,一个放大缩小的控件

用到的

UI  Drag Object;

UI Drag Resize

UI scrollbar

UI Input

UI Text List

在 菜单栏中 NGUI下 Open prefabs Toolbar

将 background拖入背景 prefabs

之后

在scens面板下 选择 background 按 T ,

右键-create sprite sibling

选择个合适的sprite作为 聊天窗口的 背景。

再右键 create sprite child 创建一个放大缩小的sprite  右键 -Attach box collider

在 Inspector 属性面板下 Add Compoent 添加放大缩小的脚本 UI Drag Resize

将其Target 设置为父物体 Pivot设置为 bottom right

设置好anchors

播放场景,就可以拖拽了

再创建一个聊天时的背景sprite。然后创建一个 Label作为 字体的显示。 Label 在inspector属性面板上 add一个UITextlist的component将其style 设置为Chat 字体出现为从下往上, Text Style 是从上往下显示。

paragraph History 是最大的显示记录。比如是10 ,

一共有20条记录 就只会显示 11~20条;

每当 Paragraph的size>大于 我们设定的History 时,就会从第一0覆盖掉,

然后 滚动条和Input输入框 可以在prefabs Toolbar中拖进来使用

也可以自己制作一个,

UI Scoll Bar

自己制作也简单,右键 创建一个sprite attach Box collider ,加上 UI scrollBar的 脚本 foreground就是滑动条, background 就是滑动条的容器,背景,Tumb是滑动条中间的东西, value不用设置,value就是滑动条的位置,按比例进行计算,

Size控制 滑动条的大小, 滑动条一定要和背景 一样宽高,然后再调整size,

之后调整anchors 一般NGUI会自动根据层级关系以及窗口中的物体,进行设置, 这里靠右因此,左右设置为right,上下要拉伸,因此为Bottom  Top,这个anchors 就是 锚点的意思, 是相对物体Top left right bottom的 位置

然后 把 InputField拖进来 设置好自适应

要把ui input的 On return key改为Submit; 和事件去掉,自己添加一个脚本实现输入文字进行 输出显示

然后写脚本 控制, 思路也很清晰,按回车 就是 submit 啦

using System.Collections;
using System.Collections.Generic;
using UnityEngine;public class chatEvent : MonoBehaviour {// Use this for initializationpublic UITextList chat_list;UIInput m_input;string[] names = new string[5]{"小红","小明","小花","小草","小树",};private void Awake(){m_input = GetComponent<UIInput>();}public void OnSubmit(){chat_list.Add(names[Random.Range(0, 5)]+":"+m_input.value);m_input.value = "";}// Update is called once per frame}

思路就是 回车  加入text 清空 input.

这个脚本挂载在 Contro-simple Input身上

在inspector 属性面板 将 挂载有 UItextList的脚本物体 拖给它 UItextlist

然后添加 事件

至此一个简单的聊天系统就做好了

NGUI制作聊天系统相关推荐

  1. Unity3D4.* NGUI制作动态字库

    新建一个工程,这个工程必须没有中文路径,否则会不识别字体!!! 首先导入NGUI插件,这里我用的是NGUI 3.0.2版本的. 在Assets 下创建一个文件夹,用来存放接下来的工作文件 . 这里随便 ...

  2. 【Unity3D游戏开发】NGUI制作字体的三种方法 (二一)

    NGUI制作字体的三种方法 主要参考两篇博文: (1).NGUI制作字体的三种方法 (2).使用位图字体工具BMFont从图片生成自定义字体 1.BMFont下载地址 http://www.angel ...

  3. NGUI制作字体的三种方法

    主要参考两篇博文: (1).NGUI制作字体的三种方法 (2).使用位图字体工具BMFont从图片生成自定义字体 1.BMFont下载地址 http://www.angelcode.com/produ ...

  4. Unity插件NGUI制作血条--HUD的基本使用

    一.利用NGUI制作 血条. 1.在2d场景中 先拖一个BG进去.然后创建一个 sprite.修改名字为LifeBar. 在inspector面板中 uisprite属性值.如下: 2.在lifeba ...

  5. unity3d学习笔记(九)--NGUI制作英雄和怪物的头像和血条

    本系列文章由Aimar_Johnny编写,欢迎转载,转载请标明出处,谢谢. http://blog.csdn.net/lzhq1982/article/details/12710797 上一篇讲了NG ...

  6. Unity NGUI 制作URL超链接点击打开网页

    http://blog.csdn.net/w174504744/article/details/45888981 1.添加Lable 菜单NGUI-create-lable 2.在Lable的Insp ...

  7. NGUI制作Word图文混排效果

    先上个自己做的例子,第一次写博客,先写个简单的例子吧,都是自己做的小demo,希望大家不要喷呐! 这个效果还是很简单滴,关键在于用两个UILabel来显示文字内容,其中一个UILabel与图片放于同一 ...

  8. 使用NGUI制作简易的老虎机

    老虎机制作流程其实很简单,首先我们需要了解NGUI的各种组件,对NGUI有一定了解的人一定清楚NGUI有一个组件UIWrap,通过这个组件可以将在ScrollView中的滚动项循环,那么我们的老虎机就 ...

  9. 【 unity3d 】 NGUI 制作、使用字体

    NGUI里可以自己制作FontMaker,但是没必要自己制作,一般在网上找,或者在电脑上找自带的字体 一:找到字体 二:直接拖入Assets 三:使用方式 把字体拖入LabelUI对象组件的font参 ...

最新文章

  1. 机器视觉系统的几个问题解析
  2. [JAVAEE] 使用Postman测试接口
  3. 我可以在Markdown中使用“ target =“ _ blank””创建链接吗?
  4. 淘气的页数 - 格式化字符串
  5. 前端面试问题(持续更新)
  6. python matplotlib画折线图_python使用matplotlib绘制折线图教程
  7. openGL纹理映射参数解析
  8. 《OpenCV图像处理》——1.7 用户交互工具
  9. 虚幻4 远处的贴图模糊处理
  10. js三进制计算机,js 笔记 - 二进制位运算符
  11. ercp手术为什么那么贵_尼泊尔佛像为什么那么贵?
  12. oracle 大页配置,【Oracle】Oracle如何开启大页
  13. MiniDao_1.6-SNAPSHOT 版本发布,轻量级Java持久化框架
  14. Python框架篇之Django(Models数据表的创建、数据库配置)
  15. Git常见相关知识与命令
  16. SpringBoot内嵌Tomcat原理剖析
  17. scrapy入门之创建爬虫项目+scrapy常用命令
  18. 如何成为城建档案管理员(资料员)
  19. android模拟器设置静态ip,静态IP地址版EVE模拟器部署和使用说明
  20. 锐龙r7 6800u和i5 12500h选哪个好 r76800u和i512500h对比

热门文章

  1. 如何计算机网络打印机驱动程序,电脑怎么安装打印机及打印机的驱动程序
  2. laravel安装-中文语言包
  3. oracle undoautotune,Oracle 暗藏参数:undo_autotune、一个吃力不讨好的活
  4. [手机分享]黑莓手机7系列分享之——7100G
  5. c语言五子棋游戏源程序代码,C语言五子棋游戏源代码
  6. 中创软件银行信贷管理SOA解决方案
  7. 《伟大的小细节:互联网产品设计中的微创新思维》——1.2 “细节决定成败”还是“大行不顾细谨”...
  8. 华为让米粉节变荣耀节 小米纸老虎(转自张利华研发与创新创业专家)
  9. 软件安全设计(威胁建模实现)
  10. C# 创建Windows Service(Windows服务)程序