我的简单应用只是加载一个网站,在网站上是一些主题所以我想如果有人点击后退按钮返回索引(到最后一个网页), 我在MainActivity.java中有这段代码
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_BACK) {
moveTaskToBack(true);
}
return super.onKeyDown(keyCode, event);
}
@Override
public void onBackPressed() {
moveTaskToBack(true);
}
按下按钮后,它正在关闭我的应用程序,哪里可能有问题?
答案 0 :(得分:3)
当webView使用onKeyDown
方法中的后台事件时,您应该返回true。
@Override
public boolean onKeyDown(int keyCode, KeyEvent event)
{
if ((keyCode == KeyEvent.KEYCODE_BACK) && web.canGoBack()) {
web.goBack();
return true;
}
return super.onKeyDown(keyCode, event);
}
在您的代码中,您将后退事件传播到主Activity,这意味着它将完成。
来源:http://developer.android.com/reference/android/view/View.html#onKeyDown(int,android.view.KeyEvent)
返回如果处理了该事件,则返回true。如果您希望允许事件由下一个接收者处理,则返回false。
答案 1 :(得分:1)
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if ((keyCode == KeyEvent.KEYCODE_BACK) && web.canGoBack()) {
web.goBack();
return true;
}
return super.onKeyDown(keyCode, event);
}