我正在与salesforce android sdk集成,它具有类nativemainactivty,它扩展了活动类。
为了将salesforce集成到应用程序中,我们需要具有扩展nativemainactivity的类。我实现了它,这样当我按下手机时,它会将用户从应用程序中取出。但是,我想导航到上一个屏幕。要导航我用下面的代码覆盖onBackpressed,但我没有成功。如果有人知道,你能指导我实现这个目标吗?
@override
public void onBackPressed(){
super.onBackPressed()
sop("back pressed!!");
}
答案 0 :(得分:0)
我对salesforce SDK一无所知,但我尽力提供帮助。在他们的原生主义活动中,他们可能会覆盖onKeyDown()方法。此方法调用onBackPressed()。他们可能会捕获后退按钮键代码而不会调用Activity类的超级方法。
尝试覆盖以下方法:
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_BACK) {
// do something
}
return super.onKeyDown(keyCode, event);
}
答案 1 :(得分:0)
在您的代码中,您缺少分号:
super.onBackPressed();
答案 2 :(得分:0)
分号不是你的问题。
调用super.onBackPressed()调用后退按钮默认行为的方法(即退出应用程序),这不是你想要的!!
虽然android中有许多回调需要调用超类方法才能正常运行,但这不是其中之一
如果从代码中删除“super.onBackPressed()”并使用您希望后退键具有的新功能填充方法体,那么它将起作用:
@override
public void onBackPressed(){
sop("back pressed!!");
//or whatever else you want it to do
}
答案 3 :(得分:0)
我把事情搞定了。
唯一要做的事就是
删除moveTaskToBack(true);
在salesforce sdk的LoginActivity中。