J'ai un problème avec le WebView (Android 3.0+), qui affiche toujours un fond blanc avant d'afficher mon fond noir ("clignotant"). Voici mon code de test simple :
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
WebView webView = new WebView(this);
webView.setBackgroundColor(Color.BLACK);
setContentView(webView);
loadWebView(webView);
webView.loadDataWithBaseURL("localhost://", "<html><head>" +
"<style>body {background-color: #000}img{max-width:100%}</style></head>" +
"<body>" +
"<img src=\"http://developer.android.com/images/practices/actionbar-phone-splitaction.png\" />" +
"</body></html>",
"text/html", "UTF-8", null);
}
J'ai essayé de nombreuses solutions pour me débarrasser de ce problème, mais sans succès.
PS : Le problème n'apparaît pas si l'accélération matérielle est désactivée. Quelqu'un a-t-il rencontré le même problème et l'a-t-il résolu ?
Merci.
0 votes
J'ai le même problème, pouvez-vous trouver une solution à ce sujet ?
2 votes
Nous n'avons toujours pas de solution ou de solution de rechange. Le problème est signalé ici : code.google.com/p/Android/issues/detail?id=26138 et ici code.google.com/p/Android/issues/detail?id=25722
0 votes
J'ai résolu mon problème, webView.setBackgroundColor(0) ; l'avez-vous essayé ?
0 votes
J'ai essayé, mais ça ne marche pas.
0 votes
Je suis tombé sur ça aujourd'hui. Pour une raison quelconque, désactiver l'accélération matérielle pour les activités en question n'est pas suffisant. Vous devez la désactiver pour l'ensemble de l'application.
2 votes
FYI : Ce bug est corrigé dans Jelly Bean.
0 votes
J'ai trouvé une solution de contournement, voir mon message : stackoverflow.com/a/17485236/923097
0 votes
Cela ressemble un peu à un problème que j'ai rencontré il y a quelque temps. Vous pouvez consulter ma question/réponse sur le SO ici : stackoverflow.com/questions/13500452/
0 votes
@Ingemar Votre résolution consiste à désactiver l'accélération matérielle, ce qui aura un impact négatif sur les performances et la consommation d'énergie.
0 votes
@Kyle Votre résolution est d'appeler continuellement
invalidate()
ce qui aura un impact désastreux sur la consommation d'énergie.0 votes
Ce problème n'est pas propre à l'émulateur, et il n'est pas non plus corrigé dans Jelly Bean (ou alors il s'est reproduit par la suite).