有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

javalibgdx在安卓中获取鼠标位置

我有一个游戏在ouya上运行。我想让游戏对象跟随光标,但mouseMoved()只在桌面版的libgdx中被调用。类似地,Gdx。输入getX()和getY()仅在单击鼠标时更新(点击ouya触摸板)

出于各种原因,badlogic建议使用他们的控制器api,而不是官方的ouya api,并且它与其他任何东西都可以完美地配合使用。在安卓中,libgdx有没有返回光标位置的方法?当libgdx控制器扩展在所有其他方面都工作并且支持多个控制器时,我真的希望避免重写所有其他控件。 谢谢


共 (2) 个答案

  1. # 1 楼答案

    我知道已经有一段时间了,你可能已经知道怎么做了,但我只是想让你知道,我已经向libGDX提交了一个补丁,它允许鼠标跟踪,就像你在桌面上那样

    现在,从libgdx1.4.1开始,它是本地完成的

  2. # 2 楼答案

    你可能想尝试一种非乌雅的方法。我可以使用USB适配器将USB鼠标和键盘插入手机,还可以将蓝牙鼠标与手机配对。事实上,你必须用很多HDMI安卓pc上的东西来实现这一点。一个鼠标应该能引起你在LibGDX中通常检测到的所有触摸事件,但我认为OUYA touchpad有一个鼠标的功能,所以如果你想像普通鼠标一样跟踪它,你应该能够

    如果你看看Android backendPC backend是如何实现的,你会看到getX和类似的查询在PC上使用鼠标,但在android上返回最后存储的触摸位置。但是从蜂巢开始,你可以用View.OnGenericMotionListener获得光标位置(参见Android: Tracking mouse pointer movement

    因此,您可以添加一些特定于android(但不是特定于OUYA)的代码来跟踪光标位置。 哦,安卓4增加了更多与鼠标相关的支持——https://developer.android.com/about/versions/android-4.0.html