当前位置: 首页 > wzjs >正文

手机网站最简单三个步骤河南省工程建设监理协会网站

手机网站最简单三个步骤,河南省工程建设监理协会网站,网页设计网站建设,叫别人做网站安全吗TMP_InputField可以注册一个onSelect回调函数,在InputField选中的时候回调,但在虚拟键盘手动关闭或被返回取消的时候,此时再打开虚拟键盘时,就不会调用onSelect。 原因在于,虚拟键盘有三种关闭的操作方式:…

TMP_InputField可以注册一个onSelect回调函数,在InputField选中的时候回调,但在虚拟键盘手动关闭被返回取消的时候,此时再打开虚拟键盘时,就不会调用onSelect

原因在于,虚拟键盘有三种关闭的操作方式:

  • 第一,是点击虚拟机键盘外部,此时会失去焦点,即LostFocus事件。
  • 第二,是手动点击虚拟键盘的关闭按钮,此时什么事件都不触发,只是虚拟键盘隐藏。
  • 第三,是使用返回按键,此时会导致取消,即Canceled事件。

有趣的是:

  • 第一种,EventSystem.current.currentSelectedGameObject为——null。
  • 第二种,EventSystem.current.currentSelectedGameObject为——InputFieldgameObject
  • 第三种,EventSystem.current.currentSelectedGameObject为——InputFieldgameObject

所以,再次打开虚拟键盘,只有第一种正确回调onSelect——因为,第二种与第三种,InputField依然保持了选中状态,而再次选中同一个对象,不会响应回调,在InputFieldOnPointerDown中可以看到是调用了SetSelectedGameObject

EventSystem.current.SetSelectedGameObject(base.gameObject, eventData);public void SetSelectedGameObject(GameObject selected, BaseEventData pointer)
{if (m_SelectionGuard){Debug.LogError("Attempting to select " + selected?.ToString() + "while already selecting an object.");return;}m_SelectionGuard = true;if (selected == m_CurrentSelected){m_SelectionGuard = false;return;}ExecuteEvents.Execute(m_CurrentSelected, pointer, ExecuteEvents.deselectHandler);m_CurrentSelected = selected;ExecuteEvents.Execute(m_CurrentSelected, pointer, ExecuteEvents.selectHandler);m_SelectionGuard = false;
}

于此同时,对于这三种情况,关闭虚拟键盘时onDeselect的回调如下:

  • 第一种,失去焦点,回调onDeselect,释放选中对象。
  • 第二种,手动关闭,不调用onDeselect,不释放选中对象。
  • 第三种,返回取消,回调onDeselect,不释放选中对象。

是的,这个返回取消,不能正确释放选中状态,还调用了onDeselect——因为这个onDeselect是被直接代码调用的,而不是通过SetSelectedGameObject触发的。

因此,要解决onSelect不调用的问题,就是关闭虚拟键盘时,手动调用EventSystem.current.SetSelectedGameObject(null)——但这会产生另一个小问题:

就是返回取消的时候,onDeselect会调用两次,即:一次来自SetSelectedGameObject,一次来自InputField自己——而失去焦点的情况,会清除选中状态,所以SetSelectedGameObject已经是null,就不会调用onDeselect

那么,解决的方法就是——使用onEndEdit来代替onDeselect


文章转载自:

http://i7zLZyTH.bfLws.cn
http://tBziVoPh.bfLws.cn
http://FTSYdcls.bfLws.cn
http://BJG1B7z3.bfLws.cn
http://xlDIuVgQ.bfLws.cn
http://F2rDExtI.bfLws.cn
http://zbZbuyRp.bfLws.cn
http://xpQC3zi9.bfLws.cn
http://TEyJoCmQ.bfLws.cn
http://ECYv8vC9.bfLws.cn
http://9Rk2YKAv.bfLws.cn
http://tYRm6ELh.bfLws.cn
http://AIPEPT24.bfLws.cn
http://whGvnYV4.bfLws.cn
http://3u1QDjwa.bfLws.cn
http://Orc5pVCm.bfLws.cn
http://UbFkTUfM.bfLws.cn
http://z9VLTWli.bfLws.cn
http://WS95Imh4.bfLws.cn
http://wGXc7y77.bfLws.cn
http://sC4gBmtN.bfLws.cn
http://cq6dMfQh.bfLws.cn
http://n9QC2QuK.bfLws.cn
http://E7lL0I9N.bfLws.cn
http://YkZMUaDL.bfLws.cn
http://Q1gv21if.bfLws.cn
http://qCHOfj3o.bfLws.cn
http://ouupmsFh.bfLws.cn
http://J3Vcme5r.bfLws.cn
http://TO0U97k7.bfLws.cn
http://www.dtcms.com/wzjs/714734.html

相关文章:

  • 03340 网站建设与管理3d动画制作软件免费
  • 邯郸做网站询安联网络济南建设厅官方网站
  • 南京定制网站哪个好wordpress建个人网站
  • 做网站的域名纳税服务网站建设情况
  • 朔州网站建设费用大连工程信息网
  • 手机网站焦点图代码企业名录免费大全
  • 网站建设硬件投入表国际品牌的品牌策划公司
  • 重庆市教育考试院门户网站网站跳转qq链接怎么做的
  • 陕西铜川煤矿建设有限公司网站郑州市做网站的
  • 红色网站 后台网站建设的基本情况
  • 网络营销网站建设诊断报告网站做推广要备案吗
  • 南京淘宝网站设计公司昆明网站建设哪个好
  • 网站开发与应用专业就业方向福州做网站需要多少钱
  • 小型企业网站建设内容wordpress升级机制
  • 学做巧裁缝官方网站湖州网站设计浙北数据
  • 网站顶部可关闭广告网站建设小组实验报告
  • 云服务器怎么样做网站商城网站开发嵌入支付宝
  • 如何查看一个网站的所有二级域名门户网站构建
  • 网站搭建入门风云榜
  • 企业网站建设jz190wordpress制作的网站模板
  • 用淘宝评论做网站怎么做淘宝链接网站
  • 手机上做整蛊网站四川建筑人才网
  • 网站建设属于什么服务医药网站建设需要注意点
  • 新材料 东莞网站建设展厅设计与施工公司
  • 2018网站开发高端品牌网站建设是什么
  • 青岛栈桥附近景点玩的顺序温州网站推广优化
  • 上海企业网站建设报价wordpress 数据库字段
  • 我们不仅仅做网站更懂得网络营销用阿里云怎么建网站
  • 江门有什么网站推广广州网站建设-信科分公司
  • 学习网站建设多少钱WordPress用云数据库