如何覆盖android后退按钮以添加功能
我想覆盖android的后退按钮,我找到了这样做的代码如何覆盖android后退按钮以添加功能,android,Android,我想覆盖android的后退按钮,我找到了这样做的代码 @Override public void onBackPressed() { } 但现在当我这么做的时候,后退按钮不起作用 如何在此函数中进行函数调用,例如取消网络请求。那么amd还让默认行为发生吗 我现在在onStop()活动方法中这样做 @Override protected void onStop() { super.onStop(); Network.cancelRequests(ConnectingActivi
@Override
public void onBackPressed() {
}
但现在当我这么做的时候,后退按钮不起作用
如何在此函数中进行函数调用,例如取消网络请求。那么amd还让默认行为发生吗
我现在在onStop()活动方法中这样做
@Override
protected void onStop() {
super.onStop();
Network.cancelRequests(ConnectingActivity.this);
}
但是,我认为当用户按下后退按钮时,不会立即调用此命令,因为网络请求的响应仍在处理中。请按以下方式使用它:
@Override
public void onBackPressed() {
//your method call
super.onBackPressed();
}
按以下方式使用:
@Override
public void onBackPressed() {
//your method call
super.onBackPressed();
}
最常见的错误是忘记调用超级
super
@Override
public void onBackPressed() {
//your custom code here
super.onBackPressed();
}
最常见的错误是忘记调用超级
super
@Override
public void onBackPressed() {
//your custom code here
super.onBackPressed();
}
@凌驾
public void onBackPressed(){
super.onBackPressed();
Network.cancelRequests(ConnectingActivity.this)
完成()
}@覆盖
public void onBackPressed(){
super.onBackPressed();
Network.cancelRequests(ConnectingActivity.this)
完成()
}改用此方法
@Override public boolean onKeyDown(int-keyCode,KeyEvent-event){if(keyCode==KeyEvent.keyCode\u-BACK){return true;}return super.onKeyDown(keyCode,event);}
因此,如果要执行正常行为,只需在if条件下返回false即可。希望它能帮助你。当你重写这个方法时。别忘了调用super.onBackPressed()您是否尝试过调用Network.cancelRequests(ConnectingActivity.this)
在OnCreate()
中改用此方法@Override public boolean onKeyDown(int-keyCode,KeyEvent-event){if(keyCode==KeyEvent.keyCode\u-BACK){return true;}return super.onKeyDown(keyCode,event);}
因此,如果要执行正常行为,只需在if条件下返回false即可。希望它能帮助你。当你重写这个方法时。别忘了调用super.onBackPressed()您是否尝试过调用Network.cancelRequests(ConnectingActivity.this)
在我的屏幕上,你的OnCreate()
里面说HPTerm比我读错的更快,比我读错的快12秒。唯一重要的是你的问题得到了解决。我显示快了8秒,但HpTerm的想法是正确的。您的问题已经解决。@Zapnologica您可以验证TronicZomB是最快的答案。我不是在争名夺利,问题是帮助别人解决他们的问题。此外,对我来说,TronicZomB比我快了几秒。在我的屏幕上,它说HPTerm比我误读的更快,比我快了12秒。唯一重要的是你的问题得到了解决。我显示快了8秒,但HpTerm的想法是正确的。您的问题已经解决。@Zapnologica您可以验证TronicZomB是最快的答案。我不是在争名夺利,问题是帮助别人解决他们的问题。此外,对我来说,TronicZomB比TronicZomB快了几秒钟。