我正在使用键盘预制键键盘上的键盘inputfield ui元素,从混合元素tooltoolkit中使用,当我在构建中选择一个键盘inputfields时,我会获得键盘预制和系统键盘弹出的系统键盘。我使用这两者都制作的较早的构建不是显示系统虚拟键盘,但我不知道我可以更改什么来引起这一点。我正在使用Unity 2017.2.0p2-Mrtp5和MixhRealityToolKit用于Unity 2017.2.1f1。(这是我与之交谈的Microsoft代表提出的(我正在创建沉浸式体验,并将Unity Build类型设置为D3D而不是Xmal。
您的输入组件实际上继承了namespace: UnityEngine.UI.
中的类InputField
激活输入的动作时,Windows会自动调用系统内置键盘。
除非您避免使用UnityEngine.UI.InputField
组件,否则禁用键盘是不受欢迎的。
您可以做的是自己编辑脚本。
我在bug报告中找到了一个解决方案
ivan2007:
"我在应用程序中遇到同样的问题。Unity文档说:Windows Store应用程序:在Universal Windows 10应用程序上,触摸屏键盘仅在基于XAML的应用程序中支持触摸输入支持。
我的应用程序与构建类型D3D而不是XAML,所以这是第一个奇怪的事情。
但是,由于显示了键盘,我们可以尝试禁用触摸输入支持。
为此,我们可以定义一个由baseInputModule使用的新基础工具,其中触摸支持的touchsupport被覆盖并设置为false。
baseInputModule具有一个受保护的属性m_inputoverride,我们可以用来告诉Unity使用新的baseinput。
也就是说,作为临时解决方法,我制作了可以添加到场景的事件系统游戏对象或另一个游戏对象的附件(在后一种情况下,您必须使用当前输入模块设置字段baseInputModule(。
在我的情况下似乎有效(未显示本机键盘(。
unity 2017.3.0f3带有HMD
有人可以尝试这个解决方法,以便我们更有信心使用它吗?
谢谢你
https://github.com/microsoft/mixedrealitytoolkit-unity/files/1710401/hideunitytouchscreenkeyboard.zip
https://github.com/microsoft/mixedrealitytoolkit-unity/files/1713278/hideunitytouchscreenkeyboardc.4.zip