我想知道,有没有人知道如何从水龙头(在C / C ++方面)获取坐标并在TextView(在Java端)上显示它们?我是Android NDK开发的新手,所以我需要很多帮助。
在C / C ++方面,我假设我必须使用AMotionEvent_getX
和AMotionEvent_getY
来获取坐标。但是,我想知道如何将这些值传递给Java并在TextView中显示它们。有人可以帮我吗?
答案 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);