Android 安卓后退按钮没有';我根本不工作
我有一个Android 安卓后退按钮没有';我根本不工作,android,Android,我有一个片段活动托管一个映射和列表活动。当按下活动上的后退按钮时,我想输入一个方法,但它似乎根本不起作用。我的日志甚至没有打印在堆栈跟踪上。 我不知道到底出了什么问题 方法如下: @Override public boolean onKeyDown(int keyCode, KeyEvent event) { if (keyCode == KeyEvent.KEYCODE_BACK ) { Log.e("Test","Back Button Clicked");
片段活动
托管一个映射
和列表活动
。当按下活动
上的后退按钮时,我想输入一个方法,但它似乎根本不起作用。我的日志
甚至没有打印在堆栈跟踪
上。
我不知道到底出了什么问题
方法如下:
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_BACK ) {
Log.e("Test","Back Button Clicked");
this.finish();
return true;
}
return super.onKeyDown(keyCode, event);
}
也许尝试删除“if”语句,看看会发生什么 也许尝试删除“if”语句,看看会发生什么 试试看,它可能会根据您的需要工作
public boolean onKeyDown(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_BACK) {
Log.e("Test","Back Button Clicked");
Intent backpage = new Intent(CurrentActivity.this,BackPageActivity.cls);
startActivity(backpage);
CurrentActivity.this.finish();
return true;
}
return super.onKeyDown(keyCode, event);
}
试试看,它可能会根据您的需要工作
public boolean onKeyDown(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_BACK) {
Log.e("Test","Back Button Clicked");
Intent backpage = new Intent(CurrentActivity.this,BackPageActivity.cls);
startActivity(backpage);
CurrentActivity.this.finish();
return true;
}
return super.onKeyDown(keyCode, event);
}
解决的问题:
为了在片段上使用后退按钮,您还需要在子活动上声明onKeyDown
/onBackPressed()
方法。问题已解决:
为了在片段上使用后退按钮,您需要在您的子活动上声明
onKeyDown
/onBackPressed()
方法。如果您想要这种功能,您需要在活动中覆盖它,然后向所有片段添加YourBackPressed接口,只要按下后退按钮,就可以调用相关片段
复制自如果您想要这种功能,您需要在活动中覆盖它,然后将YourBackPressed接口添加到所有片段中,每当按下back按钮时,您都会调用相关片段
复制自如果您将Log.d(“Test”、“KeyCode”+KeyCode”)放在;作为方法的第一行?您的代码可能有问题,您的父活动获取实例,而您当前的活动未获取Backpressed事件的实例。。。您可以在您的家长活动中打印backpressed事件,然后检查…@RakeshGondaliya:那么您的建议是什么?在所有的儿童活动中都使用相同的按键法?@Agarwal:我该怎么称呼呢?如果您将Log.d(“Test”,“KeyCode”+KeyCode”)放进去会怎么样;作为方法的第一行?您的代码可能有问题,您的父活动获取实例,而您当前的活动未获取Backpressed事件的实例。。。您可以在您的家长活动中打印backpressed事件,然后检查…@RakeshGondaliya:那么您的建议是什么?在所有的儿童活动中都使用相同的按键法?@Agarwal:我该怎么称呼呢?