La pantalla de Android gira el problema
Tengo un problema con mi aplicación. Correctamente pasa por todas las formas en un sistema de horario y muestra el horario sin embargo, cuando luego girar la pantalla para ver el paisaje o el retrato en función, que vuelve a la primera pantalla y no puedo entender por qué … gracias por adelantado por cualquier ayuda !
package com.timetable; import java.io.FileOutputStream; import java.io.IOException; import org.jsoup.Jsoup; import org.jsoup.nodes.Document; import org.jsoup.nodes.Element; import org.jsoup.select.Elements; import android.app.Activity; import android.graphics.Bitmap; import android.graphics.Canvas; import android.graphics.Picture; import android.os.Bundle; import android.view.KeyEvent; import android.view.Window; import android.webkit.WebChromeClient; import android.webkit.WebView; import android.webkit.WebViewClient; public class Timetable extends Activity { WebView mWebView; //int count = 0; String html = "<html><body>"; String html2 = "<html><body>"; Document docs; Document docs2; public String text(String htmlrec) { try { docs2 = Jsoup.connect(htmlrec).get(); } catch (IOException e) { e.printStackTrace(); } Elements data = docs2.getElementsByClass("timetables"); html2 += data.toString()+ "</body></html>"; return html2; } public void main(String... args) { try { docs = Jsoup.connect("http://www.dcu.ie/timetables/search.shtml").get(); } catch (IOException e) { e.printStackTrace(); } Elements table = docs.getElementsByClass("timetables"); html += table.toString() + "</body></html>"; } public void onCreate(Bundle savedInstanceState) { main(); super.onCreate(savedInstanceState); setContentView(R.layout.main); getWindow().setFeatureInt( Window.FEATURE_PROGRESS, Window.PROGRESS_VISIBILITY_ON); mWebView = (WebView) findViewById(R.id.webview); mWebView.setWebViewClient(new TimeClient()); mWebView.getSettings().setJavaScriptCanOpenWindowsAutomatically(true); mWebView.setClickable(true); mWebView.requestFocus(); mWebView.setInitialScale(1); //mWebView.getSettings().setBlockNetworkLoads(true); mWebView.getSettings().setSupportZoom(true); mWebView.getSettings().setJavaScriptEnabled(true); mWebView.getSettings().setDomStorageEnabled(true); mWebView.loadDataWithBaseURL("http://www.dcu.ie/timetables/",html, "text/html", "utf-8","http://www.dcu.ie/timetables/"); final Activity MyActivity = this; mWebView.setWebChromeClient(new WebChromeClient() { public void onProgressChanged(WebView view, int progress) { //Make the bar disappear after URL is loaded, and changes string to Loading... MyActivity.setTitle("Loading..."); MyActivity.setProgress(progress * 100); //Make the bar disappear after URL is loaded // Return the app name after finish loading if(progress == 100) MyActivity.setTitle(R.string.app_name); } }); } public boolean onKeyDown(int keyCode, KeyEvent event) { if ((keyCode == KeyEvent.KEYCODE_BACK) && mWebView.canGoBack()) { mWebView.goBack(); return true; } return super.onKeyDown(keyCode, event); } private class TimeClient extends WebViewClient { public boolean shouldOverrideUrlLoading(WebView view, String url) { if (view.canGoBack() == false) //if (count == 0) { String newUrl = text(url); view.loadDataWithBaseURL("http://www.dcu.ie/timetables/",newUrl, "text/html", "utf-8","http://www.dcu.ie/timetables/"); // count+ +; } else { view.loadUrl(url); Picture picture = view.capturePicture(); Bitmap b = Bitmap.createBitmap( picture.getWidth(),picture.getHeight(), Bitmap.Config.ARGB_8888); Canvas c = new Canvas( b ); picture.draw( c ); FileOutputStream fos = null; try { fos = new FileOutputStream( "/sd/dcu" + System.currentTimeMillis() + ".jpg" ); if ( fos != null ) { b.compress(Bitmap.CompressFormat.JPEG, 90, fos ); fos.close(); } } catch( Exception e ) { } } return true; } } }
- Rest Server o API para probar mi cliente Restful?
- Servidor de back-end para aplicaciones móviles
- Excepción con servicio web (java.net.SocketException Permiso denegado) en Android
- Detectar clic en el botón HTML a través de javascript en Android WebView
- alerta en la vista web incorporada
- Que cliente es mejor HttpURLConnection o HttpClient en android?
- Cargando jQuery desde activos locales en Android para una página html remota
- Deserialize / unmarshal lista genérica de XML a la lista en Android
- Cómo mostrar el contenido web en iOS y Android mediante QML
- La rotación de webcamTexture difiere en unit3d bajo Android
- Android ViewPager + Webview, ClassCastException! Necesita una vista web en un viewpager
- ¿Qué es más seguro: navegador externo o ChromeTab para autorización?
- FilePicker desde android webview trabajando sólo una vez
Lo que sucede es que cuando se cambia de orientación la actividad se destruye y se recrea. Para evitar que la actividad sea destruida y recreada, poner:
android:configChanges="orientation|keyboardHidden|keyboard"
como un atributo de su actividad en AndroidManifest.xml
.
- ¿Cómo notificar a DataSetChange () del método onitemclick ()?
- Cómo actualizar barra de progreso mediante el tema