2010-07-09 38 views
1

Il semble que mon écran WebView est TOUJOURS FULL et ne respecte pas la mise en page.WebView Bug - Ne pas dimensionner correctement

En outre, les menus d'activité ne sont pas ceux que j'ai définis, mais les navigateurs.

Si l'URL est www.google.com en mode mobile ou stackoverflow.com , cela semble fonctionner correctement!?!

Mais une fois que vous cliquez sur le mode classique ou tout autre site Web dans mobile/régulier, il prend tout l'écran.

Cela fonctionne bien avec loadData.

Merci d'avance !!

Des idées?

Michael

Je teste sur un émulateur Android 2.1.

Extrait de code

.........

setContentView(R.layout.mainactivity); 
WebView webV = (WebView)findViewById(R.id.webview); 
webV.setInitialScale(30); 
webV.loadUrl(getString(R.string.app_url)); 

Mise en page ....

<?xml version="1.0" encoding="utf-8"?> 

<RelativeLayout 
xmlns:android="http://schemas.android.com/apk/res/android" 
android:layout_width="fill_parent android:layout_height="fill_parent"> 

<TextView android:id="@+id/label" 
android:layout_width="fill_parent" 
android:layout_height="wrap_content" 
android:text="Type here:"/> 

<WebView xmlns:android="http://schemas.android.com/apk/res/android" 
android:id="@+id/webview" android:layout_width="wrap_content" 
android:layout_height="wrap_content" android:layout_below="@id/label" 
/> 

</RelativeLayout> 

Répondre

0

Ce n'est pas la faute du WebView; quand un lien est cliqué à l'intérieur du WebView, le comportement par défaut est d'ouvrir l'application Navigateur du système avec l'URL (voir # 6 sur le WebView tutorial).

Il s'agit en fait d'un doublon de this SO question; réponse courte est que vous aurez besoin de mettre en place un WebViewClient pour le WebView et définir shouldOverrideUrlLoading.