今天做自己的游戏,有个功能,就是要玩家输入文字后,点击其他区域(输入框失焦,准确说是非选中状态)自动提交。这就需要监听到Input 输入框的失焦事件,然后回调自定义方法。尝试了半天,最后发现可以用onSelect() 实现。具体方式如下:

1,准备工作。新建一个Input Field 控件,  可以直接把NGUI的预制 Control - Simple Input Field 拖出来用。再新建一个空白的Gameobject(这里我命名为Callback_GameObject),用于接收Input Field产生的非选中状态的回调。如下图:

2,为需要监听的 Input Field 控件,加入监听器 Event Listener。具体为选中 Input Field,然后在Inspector中点击【Add Componet】,搜索Ev,找到Event Listener,添加。(当然也可以在Unity的菜单上选择【Component->NGUI->Internal ->Event Listener】进行添加)

3,编写事件触发后的回调脚本Test_Submit.cs,并把 Input Field  拖拽到source_obj上:

using UnityEngine;
using System.Collections;public class Test_Submit : MonoBehaviour {// 产生事件的游戏体(Input Field)public GameObject source_obj;// Use this for initializationvoid Start () {UIEventListener.Get(source_obj).onSelect = process_select_status;}// Update is called once per framevoid Update () {}void process_select_status(GameObject raw_obj, bool status) {Debug.Log(raw_obj);Debug.Log(status); if (status) {Debug.Log("+++++++++++++ On select! ");}else {Debug.Log("------------- Out of focus!"); }}
}

4,运行验证。首先点击输入框,会得到状态信息为【true】,点击输入框外面,非选中状态会得到状态【false】。

实际上,稍微改改逻辑,就能实现OnSubmit 的功能。

NGUI用onSelect检测(监听)Input 控件失焦(非选中状态)相关推荐

  1. Qt widget事件传递顺序以及监听特定控件是否接收某个事件

    序言 其实刚开始接触的时候,是没注意到Qt widget中事件传递顺序,当时也才接触到Qt,也就没怎么去梳理,如今把我当前所掌握的先整理如下,后续如果有更深的理解,会不断完善这篇博客.(代码不是比较规 ...

  2. jquery 监听input输入停止,实现文本框自动跳转

    今天学到了一个新的东西,在此记录一下 我遇到了一个这样的需求:添加扫描一条数据,无鼠标键盘.工具:扫描枪,动作:扫描两个条码 扫描抢扫描时,扫描出来的数据是显示在当前焦点上,用input的文本框来保存 ...

  3. vue输入框输入触发事件_详解.vue文件中监听input输入事件(oninput)

    详解.vue文件中监听input输入事件(oninput) .vue文件其实是一个组件,关于它的说明我之前也写过一篇文章,地址:.vue文件,今天这篇文章要讲的是.vue文件中监听input的输入值变 ...

  4. js实时监听input输入框值的变化以便即使匹配搜索项

    问题说明 在含有搜索框的网页中,经常需要及时匹配搜索项,因此需要监听input输入框的变化事件.如果使用 onkeydown.onkeypress.onkeyup 这个几个键盘事件来监测的话,除了监听 ...

  5. html 监听input输入框的值,利用原生JS实时监听input框输入值

    利用原生JS实时监听input框输入值 原生JS中可以使用oninput,onpropertychange,onchange oninput,onpropertychange,onchange的用法 ...

  6. 原生js监听input值发生变化

    原生JS中可以使用oninput,onpropertychange,onchange oninput,onpropertychange,onchange的用法 1) onchange 触发事件必须满足 ...

  7. jquery --- 监听input框失效

    使用juery监听Input输入的变化,并且封装起来,如下: // html <input type="text" id='myinput1' /> // js fun ...

  8. element-ui 搜索框组件:监听input键盘事件 - 代码篇

    踩坑:vue + element-ui 框架监听input键盘事件 - 含demo演示 代码示下: html部分: <el-inputplaceholder="职位 | 地区 | 工作 ...

  9. vue输入框输入触发事件_.vue文件中监听input输入事件oninput详解

    .vue文件其实是一个组件,关于它的说明我之前也写过一篇文章,地址:.vue文件,今天这篇文章要讲的是.vue文件中监听input的输入值变化事件.需求是这页面中,改变input的值,就调用一个事件, ...

最新文章

  1. mysql 1100_mysql数据库选择,有1100个用户,每个用户每月生成一张表,使用中该表内每秒上传一条数据,数据量很大...
  2. 如何在UI设计中制作完美阴影
  3. 认真,respect!
  4. 统计自然语言处理——信息论基础
  5. 基于SSH的宠物管理系统(宠物商店)
  6. 第十四届恩智浦智能汽车大赛车队规划概要
  7. 如何卸载 Adobe Creative Cloud 桌面应用程序
  8. 温州大学计算机学硕考研难度,2020年温州大学计算机科学与技术考研经验分享...
  9. Springboot---Model,ModelMap,ModelAndView
  10. 编译高博ORBSLAM2_with_pointcloud_map,用TUM数据集测试。
  11. 视频教程-OpenGLES萌谷手册(iOS2018版)-其他
  12. 子查询中all与any的区别
  13. 大学物理——电磁学的一些知识整理
  14. SAP SD:VL10A上清不掉的尾巴
  15. Java web与web gis学习笔记(二)——百度地图API调用
  16. 深扒 | 海底捞出局?从闭店数据看不至于……
  17. iOS 添加第三方字体库
  18. Css white-space属性
  19. 创业故事,终生受用 之 创业必须抓住人性弱点及需求
  20. 动态规划法求解三角形最小路径问题

热门文章

  1. ss7 的主叫地址性质
  2. 调查报告:运动控制中常用的控制算法
  3. MySQL(七)—— 分组查询
  4. Android MediaPlayer播放视频详细步骤
  5. 2.20 货币兑换-设置流程
  6. 热烈欢迎深创投集团领导莅临联诚发考察指导工作
  7. IDC评述网:2013年12月份中国域名服务商Top25
  8. 电源系统分析之电源综合分析
  9. 转载 电子工程师的程序人生历程
  10. screen显示窗口查看历史输出