J'ai un problème avec le webview. J'ouvre une page Web dans cette vision webview et il ne défilera pas dans Android 2.x, mais cela fera défiler dans Android 3.x +.
Une idée que puis-je faire pour résoudre ce problème? P>
Ceci est la configuration que j'utilise pour cette webview: p> et dans la mise en page: p>
6 Réponses :
Et si vous essayez de définir ceci:
wView.getSettings().setUseWideViewPort(true);
Vous pouvez essayer de joindre votre webview Inside ScrollView: P>
Quelque chose dans le CSS ou JavaScript de ce site n'est pas pris en charge par des navigateurs Android plus anciens, ce n'est pas lié à votre code. P>
C'est un peu trop large pour répondre définitivement - vous devrez tester votre site pour la conformité sur différents navigateurs. Si vous utilisez des bibliothèques spécifiques sur votre site, vous devez vérifier leur compatibilité. P>
Voici quelques liaisons qui peuvent aider: P>
Puis-je supprimer des fonctions non prises en charge que je peux faire défiler? Il y a quelques éléments de position fixe; qui pourrait être le problème.
Sûr. C'est vraiment la seule option, j'espère que vous avez la possibilité de changer le site, vous devrez être d'essai et une erreur un peu. Impossible de dire avec certitude ce qui cause d'ici!
Si ce n'est pas mon site, comment puis-je modifier le HTML sur l'appareil?
Oui mais ce ne sera pas très simple. Implémentez votre propre WebViewClient ou obtenez le HTML d'abord à l'aide de httpClient Stackoverflow.com/Questtions/3479833/...
Un site WebViewClient peut-il modifier le HTML?
Peut-être mieux utiliser httpclient pour obtenir / modifier le HTML d'abord, puis transmettez-le sur votre webview comme décrit dans cette solution Stackoverflow.com/a/ 3482047/833647
Modifiez votre XML pour utiliser ScrollView à la place. Fonctionnera.
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:background="#00000000" tools:context=".MainActivity" android:orientation="vertical"> <ScrollView android:layout_width="match_parent" android:layout_height="match_parent" <WebView android:id="@+id/webView1" android:layout_width="match_parent" android:layout_height="match_parent" android:scrollbars="horizontal" /> </ScollView> </LinearLayout>
Il y a beaucoup d'amélioration est venu en 3x +, une trop grande limitation de Webview Android http://androiddeveloperuser.blogspot.in/2011/05 /webview-part-1-capabilities-and.html P>
Ici, je vais au-delà de la courte ligne de contenir écrit dans un blog Android écrit sur la limitation et l'avantage p>
Il y a beaucoup d'événements qui ne peuvent pas être interceptés et il y a limitation dans quels comportements peuvent être surchargés, ce qui limite la personnalisation de ce composant et modifiant le comportement par défaut de ce composant difficile. P> blockQuote>
Si vous avez toujours un problème au cas où si vous souhaitez afficher la barre de progression tandis que la page est toujours en cours de chargement
Utilisez p> espère que cela aide ... p> p>
Est-ce le cas pour tous les sites que vous essayez ou juste cette page particulière?
Potentiellement, c'est quelque chose dans le JavaScript ou le CSS du site qui n'est pas pris en charge par les navigateurs plus anciens. Essayez de tester avec le navigateur natif sur le périphérique plus ancien. Ça marche là-bas? J'ai le sentiment que ce n'est pas ton code ...
Ken est absolument juste. Si cela ne se produit que pour un site, c'est le site, pas le
webview code>.
Mais, si ce n'est pas mon site, comment puis-je résoudre ce problème de fonctionner? Quelque chose comme télécharger le site et modifier le code HTML sur l'appareil ...?
Pouvez-vous poster l'URL que vous rencontrez des problèmes?