NUGI聊天功能的实现

开始了一个实例:

描述一下这个功能吧:窗口可以随意拖动,通过右下角的按钮可以随意调整整个窗口的大小,而且要让里面的东西都自适应:

用sprite建立一个bgr的大背景。然后建立label并且设置为textlist。建立scroll bar命名为scroll如图。还有用sprite建立一个button,负责让整个bgr大小可拖动变化,

给,bgr加上可拖动脚本——UIDrag Object Script.。给button加上UIDrag Resize Script。一切如下面的图:


button拖动大小变化的脚本添加。注意target是bgr如图:




bgr的拖动脚本添加注意target:


一切都ok了,让后调整里面每一个的Anchors的属性保证自适应。。。。。

然后开始弄输入框:把on Return key属性调成submit如图:



然后加入一个脚本命名为Mychat。控制输入框的输入功能:如下图注意把label加进去。。。。。


具体的Mychat脚本:

using UnityEngine;
using System.Collections;

public class mychat : MonoBehaviour {
   private  UIInput  inputchat;
    public UITextList textlist;
	
	void Start () {
        inputchat = this.GetComponent<UIInput>();
	}


    public void Onchatsubmit()
    {
        string chatmessage = inputchat.value;//获取聊天内容
        textlist.Add(chatmessage);//把内容添加到textlist里面
        inputchat.value = "";//使输入框的内容清除
    }


}



然后把Onsubmit本来的属性脚本删除(本来的脚本实现的功能是输入一次后输入框会失去焦点)然后把输入框拖进去如图。然后在method里面添加刚才脚本里写的方法




这样聊天功能就实现了运行一下输入内容后按enter键就可以发送消息到Label上显示了:




要想加入一个发送人的名字的实现在原来的代码里加入一下内容。全部代码如下;

using UnityEngine;
using System.Collections;

public class mychat : MonoBehaviour {
   private  UIInput  inputchat;
    public UITextList textlist;
    private string []names=new string [3]//定义个数组表示用户
    {
    "小紫龙",
    "紫龙",
    "大紫龙"

    };
	


	void Start () {
        inputchat = this.GetComponent<UIInput>();
	}


    public void Onchatsubmit()
    {
        string chatmessage = inputchat.value;//获取聊天内容

   string name=names[Random .Range (0,3)];//随机输出一个名字

        textlist.Add(name+":"+chatmessage);//把内容添加到textlist里面
        inputchat.value = "";//使输入框的内容清除
    }


}


运行效果如图:







  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值