zoukankan      html  css  js  c++  java
  • NGUI---使用脚本控制聊天系统的内容显示,输入事件交互

      在我的笔记Unity3D里面之 简单聊天系统一 里面已经介绍怎么创建聊天系统的背景、给聊天系统添加滚动条,设置Anchor锚点、以及设计聊天系统的输入框。

      效果图如下所示:

      

    现在我们要做的就是使用脚本控制聊天系统的内容显示,输入事件交互

    就是当我们输入内容以后按回车聊天背景框里面需要显示我们输入的内容

    我们的工程如下所示:

    点击Simple Input Field 在右侧的Inspector里面

    UIInput是控制输入的,On Return Key需要设置成Submit,就是当我们输入文字按回车的时候需要提交输入内容

    下面的On Sumit是perfab自带的提交脚本,就是当我们提交内容的时候会失去焦点,只有当我们重新点击输入框的时候才可以输入内容,在这里我们不需要,所以需要设置成这样、

    下面我们就需要添加一个我们自己写的脚本来控制输入交互事件了

    scripts里面创建一个脚本叫MychatInput

     1 using UnityEngine;
     2 using System.Collections;
     3 
     4 public class MyChatInput : MonoBehaviour {
     5 
     6     private UIInput input;
     7     public UITextList textlist;
     8 
     9     private string[] names = new string[4]{
    10         "hello",
    11         "系统",
    12         "evilsnake",
    13         "光头强"
    14     };
    15 
    16     void Awake() {
    17         input = this.GetComponent<UIInput>();
    18     }
    19 
    20     public void OnChatSubmit() {
    21         string chatMessage = input.value;
    22         string name = names[Random.Range(0, 4)];
    23         textlist.Add( name+" : "+ chatMessage);
    24         input.value = "";
    25     }
    26 }

    然后:

             

    On Sumit处也要指定游戏物体以及方法

    运行之后的效果为:

  • 相关阅读:
    JSON开源库API【转载】https://nlohmann.github.io/json/index.html
    ZeroMQ示例(C/C++/PHP)详解三种模式
    Makefile精髓篇【转】
    JNI数组操作
    【摘要】malloc、calloc和realloc的用法
    容器内部安装scp,拷贝到外部物理机
    关于VMware虚拟机安装镜像时黑屏的解决办法
    linux下打压缩解压
    高效载入“大”图片
    后台执行Bitmap加载
  • 原文地址:https://www.cnblogs.com/cxq0017/p/5840535.html
Copyright © 2011-2022 走看看