その質問とその質問に関して、onKeyDown と onKeyLongPress を使用する場合は、onKeyDownevent.startTracking();
内で使用する必要があります。しかし、私はWebViewを使用しています。
WebView の戻る機能を失わずに onKeyDown と onKeyPress に参加するにはどうすればよいですか?
私はこの動作が必要です:
webview 内で、
* ユーザーが [戻る] ボタンを押すと、webview は履歴に戻ります * ユーザーが [戻る]
キーを長押しすると、finish()
が呼び出されます
public boolean onKeyDown(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_BACK) {
if(mWebView.canGoBack()) {
mWebView.goBack();
} else {
super.onBackPressed();
}
return true;
}
return super.onKeyDown(keyCode, event);
}
@Override
public boolean onKeyLongPress(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_BACK)
{
finish();
return true;
}
return super.onKeyLongPress(keyCode, event);
}