У меня есть веб-представление в моем макете. По умолчанию в нем открывается форма поиска. При поиске под формой поиска появляется раздел листинга. Если нажата какая-либо ссылка в списке, откроется страница сведений. Теперь я хочу контролировать обратную навигацию для веб-просмотра. Я поместил этот код в Activity.
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
Log.d("TYPE", TYPE);
WebView myWebView = null;
if (TYPE.equalsIgnoreCase("REPORT_ACTIVITY"))
myWebView = reportView;
if (TYPE.equalsIgnoreCase("FEEDBACK_ACTIVITY"))
myWebView = feedbackView;
if (myWebView != null)
// Check if the key event was the Back button and if there history
if ((keyCode == KeyEvent.KEYCODE_BACK) && myWebView.canGoBack()) {
myWebView.goBack();
return true;
}
// If it wasn't the Back key or there no web page history, bubble up
// to the default
// system behavior (probably exit the activity)
return super.onKeyDown(keyCode, event);
}
private WebViewClient webViewClient = new WebViewClient() {
public void onPageStarted(WebView view, String url, Bitmap favicon) {
Log.d("onPageStarted", "onPageStarted");
loadProgressBarBox.setVisibility(View.VISIBLE);
//view.setVisibility(View.GONE);
}
public void onPageFinished(WebView view, String url) {
Log.d("onPageFinished", "onPageFinished");
loadProgressBarBox.setVisibility(View.GONE);
}
public void onReceivedError(WebView view, int errorCode,
String description, String failingUrl) {
Log.d("Error", "Error code: " + errorCode + "/" + description);
}
}
Я также установил WebViewClient с WebView. Когда я возвращаюсь с помощью кнопки "Назад", он отлично работает для любой версии 4.4. Но когда я пытаюсь в Android 4.4, он возвращается с подробной страницы на страницу со списком. Но как только я пытаюсь вернуться назад, его код ошибки бросания -1 и ERR_CACHE_MISS в описании. Страница не отображается.
09-04 06:59:05.666: D/Error(1102): Error code: -1/net::ERR_CACHE_MISS
Как решить эту проблему в Android 4.4?