我们正在使用GVRf开发Gear VR应用程序。应用程序中有两个GVRScenes,我们希望如果用户短按后面一个场景B中的按钮,它会回到场景A,如果用户短按后面一个场景A中的按钮,它会退出应用程序。此外,长按后退按钮应显示Oculus设置菜单,然后按下该按钮应恢复应用程序(根据Oculus商店要求)。
由于未从框架调用GVRActivity.onBackPressed()
,我们尝试覆盖onKeyUp
中的GVRActivity
:
@Override
public boolean onKeyUp(int keyCode, KeyEvent event) {
if (KeyEvent.KEYCODE_BACK == keyCode) {
if (mScript.onBackPressed()) {//mScript.onBackPressed() handles change scene logic
//and returns true if we are in scene B, and returns
//false if we are in scene A
super.onBackPressed();
}
return true;
}
return super.onKeyUp(keyCode, event);
}
现在从场景B短按即可,长按显示眼图设置。问题是,如果我们从场景B按回并从设置中按回来,它将切换到场景A,如果我们从场景A执行相同操作,则应用程序将重新启动。
实现这个的正确方法是什么?提前致谢。
答案 0 :(得分:0)
我们找到了解决方法。
首先,将GVRActivity
的{{1}}修改为mPaused
。
protected
然后我们在 protected boolean mPaused = true;
:
onKeyUp()
Activity
希望这可以帮助其他人,如果有人有更好的解决方案,请随时发布。