Android NDK - 如何从水龙头获取坐标并在TextView上显示它们?

时间:2014-02-05 18:52:58

标签: java c++ android-ndk coordinates

我想知道,有没有人知道如何从水龙头(在C / C ++方面)获取坐标并在TextView(在Java端)上显示它们?我是Android NDK开发的新手,所以我需要很多帮助。

在C / C ++方面,我假设我必须使用AMotionEvent_getXAMotionEvent_getY来获取坐标。但是,我想知道如何将这些值传递给Java并在TextView中显示它们。有人可以帮我吗?

3 个答案:

答案 0 :(得分:2)

Android NDK非常有限。我在Java端处理触摸并将其传递给NDK。我使用NDK渲染图形(OpenGL ES 2.0)并进行游戏逻辑。

如果您希望将触摸传递给TextView,那么您不需要Android NDK。

答案 1 :(得分:1)

要从JNI / C ++调用java对象,您需要使用env-> GetMethodID和env-> CallXXXMethod查询jmethod,google它,并且有很多示例。

我还建议在java端获取输入,并将其传播给C ++处理程序,这样您就可以更多地访问View和其他对象。

答案 2 :(得分:1)

如果您使用TextView记录触摸值,那么我建议使用Android的日志记录。它在NDK和Java两个方面都可用。

<强>爪哇

Log.i("GAME", "Touch X: " + x + " Y: " + y);

<强> NDK

__android_log_print(ANDROID_LOG_INFO,"GAME", "Touch %f %f", x, y);