首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在unity系统中使用Holotoolkit keyboard.prefab输入时,Windows混合现实应用程序的键盘也会显示

在unity系统中使用Holotoolkit keyboard.prefab输入时,Windows混合现实应用程序的键盘也会显示
EN

Stack Overflow用户
提问于 2018-02-09 09:17:47
回答 2查看 1.2K关注 0票数 1

我将键盘预置与MixedRealityToolkit中的KeyboardInputField UI元素一起使用,当我在构建中选择其中一个KeyboardInputFields时,键盘预置和系统键盘都会弹出。我使用这两种方法构建的早期版本没有显示系统虚拟键盘,但我不知道是什么原因导致了这一点。我使用unity 2017.2.0p2-MRTP5和MixedRealityToolkit for Unity 2017.2.1f1。(这是我采访的微软代表的建议)我正在创建一种身临其境的体验,并将Unity build类型设置为D3D,而不是XMAL。

EN

回答 2

Stack Overflow用户

发布于 2018-02-09 17:15:05

您的输入组件实际上继承了namespace: UnityEngine.UI.中的InputField

当您激活输入操作时,Windows将自动调用系统的内置键盘。

禁用键盘是可以撤消的,除非您避免使用UnityEngine.UI.InputField组件。

你能做的就是自己编辑脚本。

票数 0
EN

Stack Overflow用户

发布于 2018-02-14 14:36:26

我在MixedRealityToolkit上的错误报告中找到了一个解决方案

ivan2007:

“我的应用程序也遇到了同样的问题。Unity文档显示:

Windows应用商店应用:在通用Windows10应用上,只有基于XAML的应用程序支持触摸输入时才支持触摸屏键盘。我的应用程序是构建类型的D3D,而不是xaml,所以这是第一件奇怪的事情。

但是,由于显示了键盘,我们可以尝试禁用触摸输入支持。

为此,我们可以定义一个由BaseInputModule使用的新BaseInput,其中touchSupported被覆盖并设置为false。

BaseInputModule有一个受保护的属性m_InputOverride,我们可以用它来告诉unity使用新的BaseInput。

也就是说,作为临时解决方法,我制作了附加的脚本,可以将其添加到场景的EventSystem游戏对象或其他游戏对象(在后一种情况下,您必须使用当前输入模块设置字段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

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48697334

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档