• 92409

    文章

  • 775

    评论

  • 17

    友链

  • 最近新加了换肤功能,大家多来逛逛吧~~~~
  • 喜欢这个网站的朋友可以加一下QQ群,我们一起交流技术。

Unity使用InputField隐藏输入框的方法

撸了今年阿里、腾讯和美团的面试,我有一个重要发现.......>>

在使用Unity早期版本(2018之前的版本)生成并发布的apk,使用InputField进行用户名和密码等输入的时候,会出现如下的情况,点击输入框,弹出的虚拟键盘上方带有另一个输入框,输入的内容会显示在键盘上部的输入框之中:

 

而开发者其实想要实现的是这样的效果:

 

在inputFiled的Inspector界面可以看到这样一个选项:

但是选中了之后并没有什么卵用,unity3d官方解释是这个选项只在ios上生效,android上出于安全等方面考虑,这个选项是不生效的。

解决办法有两个,

1.

使用https://github.com/mopsicus/UnityMobileInput   ,但这个方案有一些问题,首先需要修改一处代码,才能正常使用,将MobileInputField.cs的函数InitialzieOnNextFrame ()之中下面三条语句注释掉:

            //_inputObject.placeholder.gameObject.SetActive (false);
            //_inputObject.enabled = false;
            //_inputObjectText.enabled = false;

 这样按照它demo之中的方法使用,就可以隐藏键盘上方的输入框了,但这个方法有很多问题,比如如果需要对InputField进行SetActive(false),然后再SetActive(true),会发现键盘上的输入框又出现了,而如果使用SetAsFirstSibling将其放置于所有层之下,手指点击inputfield的所在区域又会弹出虚拟键盘.....总之这是一个不完美的解决方案。

2.

把unity升级到2018以上的版本,此时会发现Inputfield的Inspector界面之中Hide Mobile Input这个选项在android上也能生效了,选中之后弹出的虚拟键盘上方就不会带有输入框了。

 


695856371Web网页设计师②群 | 喜欢本站的朋友可以收藏本站,或者加入我们大家一起来交流技术!

欢迎来到梁钟霖个人博客网站。本个人博客网站提供最新的站长新闻,各种互联网资讯。 还提供个人博客模板,最新最全的java教程,java面试题。在此我将尽我最大所能将此个人博客网站做的最好! 谢谢大家,愿大家一起进步!

转载原创文章请注明出处,转载至: 梁钟霖个人博客www.liangzl.com

0条评论

Loading...


发表评论

电子邮件地址不会被公开。 必填项已用*标注

自定义皮肤
注册梁钟霖个人博客