Ho un WebView
nella mia applicazione che carica il contenuto dinamico e voglio che la vista rimanga attiva sulle rotazioni del dispositivo. Così ho scritto le seguenti righe di codice:Ripristino dello stato di webview che contiene HTML generato dinamicamente
@Override
public void onSaveInstanceState(Bundle outState) {
super.onSaveInstanceState(outState);
mWebView.saveState(outState);
}
e nel mio onCreate():
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
if (savedInstanceState != null) {
if(D.bug){
Log.i(TAG, "Restoring browser state");
}
mWebView.restoreState(savedInstanceState);
} else {
if(D.bug){
Log.i(TAG, "Not restoring browser state");
}
mWebView.loadUrl("file:///android_asset/html/browser_3col.html");
}
return mWebView;
}
Ma questa ricarica in modo efficace la pagina. Voglio passare l'HTML generato dinamicamente.
Stavo pensando di pratiche di dumping dell'intero documento HTML attraverso un JavascriptInterface
, riporlo nella Outstate, e quindi il ripristino di nuovo attraverso il JavascriptInterface
.
Questo sarebbe un buon approccio? Non esiste un metodo di WebView
che mi consente di ottenere il suo codice HTML interno?
Hai mai trovato una soluzione che manterrebbe le variabili javascript e jvascript? – Alexey