Ich habe einen ViewPager. Jede Seite des ViewPagers ist eine ScrollView. Die ScrollView enthält ein WebView und mehrere andere Ansichten.
Auf Android 2.3 und älter funktioniert alles gut, aber ab 3.0+ gibt es ein seltsames Rendering-Problem:
Wenn Sie im ViewPager nach links / rechts scrollen, gibt es auch ein sehr subtiles Rendering-Problem (das auch in der Android 4.0 Google Mail-App vorhanden ist).
Ich habe es teilweise gelöst, indem ich webView.requestLayout()
in ScrollView.onScrollChanged()
aufgerufen habe. Es ist jetzt fast in Ordnung, aber beim Scrollen scheint die WebView
nicht mehr mit anderen ScrollView
untergeordnet zu synchronisieren. Manchmal scheint WebView
etwas langsamer zu scrollen als andere Ansichten und holt sie einen Moment später ein.
Dies könnte mit hardwareAcceleration zusammenhängen. Versuchen Sie es ausdrücklich auszuschalten. Sie können dies tun
1) im Anwendungs-Tag in Ihrem Manifest (wodurch die Hardwarebeschleunigung in der App deaktiviert wird)
%Vor%ODER 2) Deaktivierung für die problematische Ansicht im Code:
%Vor%Weitere Informationen und zur Überprüfung, ob ein WebView oder ein ListView die Hardwarebeschleunigung korrekt handhaben, finden Sie unter diesen Link
Tags und Links android webview android-3.0-honeycomb android-4.0 hardware-acceleration