G-Sensor Probleme

G

Gastonet

Fortgeschrittenes Mitglied
22
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:
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
 
  • Danke
Reaktionen: Gastonet
Besten Dank, nijoX!! Hat gut funktioniert :)
 
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?
 
je nachdem was du alles in einer oncreate methode machst.

das wird ja alles durchlaufen, bevor die activity neu angezeigt wird.
 
  • Danke
Reaktionen: Gastonet

Ähnliche Themen

S
Antworten
4
Aufrufe
995
Sempervivum
S
R
Antworten
3
Aufrufe
1.631
Ritartet
R
N
Antworten
8
Aufrufe
1.019
NerkJ
N
Zurück
Oben Unten