我的应用程序完全使用 C/C++ 编写NativeActivity
,它没有 Java 代码(基于“native-activity”NDK 示例)。按“后退”按钮将其关闭(破坏活动),但我需要此按钮的其他行为,因为我有自己的 UI 和菜单,它们通过 OpenGL 显示。
当我读到时 https://stackoverflow.com/questions/8501732/does-android-application-development-guideline-allow-disabling-default-menu-and,为了改变“后退”按钮的行为,我需要覆盖onBackPressed()
Java活动类的方法。但我不使用Java,我可以从C/C++访问这个方法来重写它吗?
如果没有,是否有另一种方法可以使用 NDK 处理“后退”按钮,没有java代码?
已解决:为了防止默认的“后退”按钮行为,在处理按键事件时返回 1 就足够了:
int32_t app_handle_event(struct android_app* app, AInputEvent* event) {
if (AKeyEvent_getKeyCode(event) == AKEYCODE_BACK) {
// actions on back key
return 1; // <-- prevent default handler
};
// ...
return 0;
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)