【问题标题】:Return selected letter in hololens keyboard using Unity使用 Unity 在 hololens 键盘中返回选定的字母
【发布时间】:2020-02-25 18:51:05
【问题描述】:

所以我对 unity 和 hololense 非常陌生,但我想了解如何添加此特定功能。我希望能够打印用户通过 hololens 键盘移动时选择的单个字母。例如,如果用户在键盘中间移动,应用程序应该为每个被选中的字母打印一个新行,它看起来像下面这样。

已选择:a 已选择:s 已选择:d …… 已选择:j 已选择:k 已选择:l

我对此进行了一些研究,但我发现最接近的是 getkey() 方法,但据我了解,对于该方法,用户需要实际单击单个字母才能注册。从我从 Unity 论坛上读到的内容来看,这个功能看起来是可行的,但我还没有找到任何关于如何做到这一点的细节。我真的很感激任何建议。提前谢谢你

【问题讨论】:

    标签: c# hololens unity-editor


    【解决方案1】:

    我们建议您使用 MRTK2.3 的Non-Native Keyboard 来简化操作。您只需要在 KeyboardValueKey.cs 脚本中为KeyboardValueKey 类实现IPointerEnterHandler 接口即可:

    public void OnPointerEnter(PointerEventData eventData)
    {
        Debug.Log("Select: " + Value);
    }
    

    当指针悬停在某个游戏对象上时调用此方法。此外,如果您不熟悉 NonnativeKeyboard,MixedRealityToolkit.Experimental\NonnativeKeyboard\Scenes\NonNativeKeyboardExample 中的示例场景将展示如何使用 Non-NativeKeyboard。

    【讨论】:

    • 您好 Hernando,感谢您的回复。不过,快速的问题是,是否可以使用标准键盘完成此操作,这对于应用程序来说有点必要。此外,如果您有任何类型的示例程序可以实现此方法,那就太好了。谢谢。
    • AFAIK,API getkey()只能获取当前按住的key的字母,Unity没有提供API来获取被聚焦的key。使用 Native Keyboard 可能很难实现这个想法。
    猜你喜欢
    • 2023-01-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-05-26
    • 2011-07-07
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多