Unity NGUI实现移动端输入法取认事件响应

NGUI已经实现了事件的监听功能,看下图:On Return Key(选择Snbmit) ,可以直接注册监听事件。

实现如下:

1、搭建一个简单场景

wKioL1ljf-PRBtGxAAKAx5hV9OQ336.png-wh_50650) this.width=650;” src=”https://images.winkp.com/imgs/winkp/_winkp/2023/08/255596831046488043.png” title=”1.png” class=”aligncenter”>

2、新建一个脚本InputTest.cs 挂载在Input物体下,并拖拽赋值Txt_content, input

using UnityEngine;

//笔者通过集成InputField,在update中监听软件盘的状态捕获到回车事件
public class InputTest : MonoBehaviour
{

    public UILabel txt_content;
    public UIInput input;

    void OnEnable()
    {
        EventDelegate.Add(input.onSubmit, ReturnCallBack);
    }

    void OnDisable()
    {
        EventDelegate.Remove(input.onSubmit, ReturnCallBack);
    }


    public void ReturnCallBack()
    {
        txt_content.text = input.value;
    }
}

3、运行游戏,在input中输入内容后回车,content将赋值刚输入的内容(回车功能等同移动端的确认按钮,已打包apk测试)

效果如下:

wKiom1ljgebRvg1JAAQf7cA8oVc097.png-wh_50650) this.width=650;” src=”https://images.winkp.com/imgs/winkp/_winkp/2023/08/216927337389983099.png” title=”2.png” class=”aligncenter”>