1. Gastonet, 09.11.2011 #1
    Gastonet

    Gastonet Threadstarter Erfahrener Benutzer

    Hab in einer Layoutdatei eine WebView, welche auch problemos die erwünschte Seite lädt. Wenn ich mein Smartphone allerdings neige und sich der Bildschirminhalt dreht, dann lädt er komischerweise die Seite neu (und zwar die ursprüngliche URL) :/

    Die URL ist statisch im Code festgelegt und wird mit der onCreate-Anweisung geladen

    Code:
    @Override
    	protected void onCreate(Bundle savedInstanceState) {
    		super.onCreate(savedInstanceState);
    		setContentView(R.layout.nachrichten);
    		String neueadresse = "http://www.google.de";
    		mWebView = 
    				(WebView) findViewById(R.id.wv_startseite);
    		mWebView.setWebViewClient(mViewClient);
    		mWebView.getSettings().setJavaScriptEnabled(true);
    		mWebView.loadUrl(neueadresse);
    	}
    Wie verhindere ich, dass er die Seite neu aufbaut?

    Beste Grüße
     
    Zuletzt bearbeitet: 10.11.2011
  2. nijoX, 10.11.2011 #2
    nijoX

    nijoX Junior Mitglied

    Hallo sel3,
    Um das Neuladen zu verhindern, musst du dir die aktuelle URL immer speichern und dann in der onCreate methode nach dem 1. Aufruf ein flag setzen anhand dessen du dann schauen kannst ... 1. mal aufrufen ? google.de : savedInstanceState. so in der Art. Sollte als denkanstoß reichen :)

    MfG nijoX
     
    Gastonet gefällt das.
  3. Gastonet, 10.11.2011 #3
    Gastonet

    Gastonet Threadstarter Erfahrener Benutzer

    Besten Dank, nijoX!! Hat gut funktioniert :)
     
  4. Gastonet, 10.11.2011 #4
    Gastonet

    Gastonet Threadstarter Erfahrener Benutzer

    Aktuell habe ich es so umgesetzt:

    Code:
    protected void onSaveInstanceState(Bundle outState) {
    		String link = mWebView.getUrl();
    		outState.putString("link", link);
    		super.onSaveInstanceState(outState);
    		Log.d(TAG, "onSaveInstanceState() aufgerufen");
    	}
    	
    	protected void onRestoreInstanceState(Bundle savedInstanceState) {
    		super.onRestoreInstanceState(savedInstanceState);
    		String link = savedInstanceState.getString("link");
    		mWebView.loadUrl(link);
    		Log.d(TAG, "onRestoreInstanceState() aufgerufen");	
    	}
    Das funktioniert wie bereits gesagt. Allerdings ist der Übergang vom Landscape- in den Portraitmodus (und umgekehrt) alles andere als flüssig S:
    Da erscheint für eine Sekunde eine weiße Seite. Gibt es da bestimmte Tricks, wie man das optimieren kann?
     
  5. swordi, 10.11.2011 #5
    swordi

    swordi Gewerbliches Mitglied

    je nachdem was du alles in einer oncreate methode machst.

    das wird ja alles durchlaufen, bevor die activity neu angezeigt wird.
     
    Gastonet gefällt das.
Die Seite wird geladen...
Similar Threads - Sensor Probleme Forum Datum
Sensoren bzw Infos auslesen. Android App Entwicklung 05.08.2016
Probleme mit Action Floating Button Android App Entwicklung Samstag um 23:45 Uhr
[OFFEN] WebView Probleme Android App Entwicklung 19.05.2017
[ERLEDIGT] Probleme mit Wear Modul Android App Entwicklung 01.05.2017
[OFFEN] Probleme mit SearchView in ArrayAdapter Android App Entwicklung 28.04.2017
Verständnisprobleme beim Layout Android App Entwicklung 21.02.2017
Probleme beim Encoding einer Textdatei von Windows Android App Entwicklung 25.01.2017
Probleme mit NFC File Transfer Android App Entwicklung 21.01.2017
Layout-Probleme auf verschiedenen Geräten Android App Entwicklung 19.01.2017
AsyncTasks: "FTP Download" / "FTP liste Daten in Verzeichnis" Probleme Android App Entwicklung 16.01.2017