2010-08-18 29 views
11

Tengo WebView dentro del ScrollView.La vista de desplazamiento no cambia de tamaño cuando cambia el contenido de la vista infantil

El contenido de WebView cambia dianámicamente cuando muestra una página html diferente.

Tengo el siguiente problema:

Por ejemplo, tengo A.html y B.html. El contenido de B.html es mayor que A.html, por lo que la página es más larga.

Cuando WebView carga B.html, la ScrollView extiende su tamaño para permitir a sí mismo para desplazarse B.html, a continuación, si vuelvo a A.html, ScrollView no cambia el tamaño en sí. (El área de desplazamiento es exceda el contenido de A.html)

alt text

Lo que quiere tener, es un cambio dinámico del área de desplazamiento de vista de desplazamiento para ajustar el contenido de la vista web.

Cualquier idea o sugerencia

Respuesta

-2

Eso no es buena idea colocar WebView interior de ScrollView. WebView es lo suficientemente inteligente como para mostrar barras de desplazamiento por sí mismo.

+7

¿Qué pasa si tenemos el contenido por encima de la vista Web que queremos para desplazarse así? ¿Hay alguna manera de hacer que ScrollView vuelva a evaluar? – Steven

+2

Me pregunto por qué se acepta esta respuesta, la pregunta fue "¿Cómo?" en lugar de "¿Es buena idea?" – Yuriy

+0

Pero tiene razón (en la mayoría de los casos). Si el autor de la pregunta decide marcar la respuesta, probablemente él sepa lo que está haciendo. Me pregunto por qué es malo ... –

-3

No ponga WebView dentro de ScrollView.

5

Intente usar android:fillViewport en la vista de desplazamiento ... !!

<ScrollView 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    android:id="@+id/scroller" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    android:fillViewport="true" > 
1

Después pantalla Orientación cambiará de tamaño, que funciona, pero mal en el rendimiento, no es una solución muy buena

setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE); 
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_SENSOR); 
Cuestiones relacionadas