单行输入框回车与自定义回车键功能冲突

Unity里面回车键绑定了一个功能,在输入框未获得焦点时让输入框获得焦点,输入框获得焦点时发送消息并取消焦点
看了下源码,这个输入框是一个单行输入框,内置有回车键功能会把焦点设置为父组件并触发onSubmit事件和onKeyDown事件
但是由于不知道这两个事件哪一个先触发,所以会有冲突,想问下有没有解决方案?
Unity里绑定功能代码:

2G78D}Z3SF{JS@`EJ4@XBQ.png


输入框源码:

AKFS_Q9MMUZ86JV%F_XAHJ.png

 
已邀请:

谷主

赞同来自:

看不大懂冲突在哪里。为什么不直接侦听输入框的onSubmit事件。

Jacktomyw

赞同来自:

抱歉我没写清楚,我写的回车键处理逻辑是如果焦点不在输入框上,那么聚焦到输入框
但是输入框监听到回车键会把焦点转移到母组件上
因为不知道哪个方法先执行,所以有可能先执行输入框内置的回车键处理逻辑再处理我的,结果就是回车submit之后焦点仍在输入框上
想要的结果是submit之后解除焦点

Jacktomyw

赞同来自:

现在监听了onSubmit,但回车submit之后焦点还是在输入框上
 

谷主

赞同来自:

那就是你那个全局侦听回车的问题。你的代码没贴全,但我猜你没有用fairygui的方式去侦听按键,而是unity方式,那当然是不知道哪个方式先只执行。

Jacktomyw

赞同来自:

好的,我看看能不能只用UI的方式做,感谢谷主

要回复问题请先登录注册