Problema de altura NestedScrollView y WebView

Utilizo el nuevo android.support.v4.widget.NestedScrollView y me enfrenté con el problema.

Aquí está mi diseño:

 <android.support.design.widget.AppBarLayout android:layout_width="match_parent" android:layout_height="250dp"> <android.support.design.widget.CollapsingToolbarLayout android:layout_width="match_parent" android:layout_height="match_parent" app:contentScrim="?attr/colorPrimary" app:layout_scrollFlags="scroll|exitUntilCollapsed"> <RelativeLayout android:layout_width="match_parent" android:layout_height="wrap_content" app:layout_collapseMode="parallax" app:layout_collapseParallaxMultiplier="0.7"> <!-- some views inside --> </RelativeLayout> <android.support.v7.widget.Toolbar android:layout_width="match_parent" android:layout_height="?attr/actionBarSize" app:popupTheme="@style/ThemeOverlay.AppCompat.Light" app:layout_collapseMode="pin" /> </android.support.design.widget.CollapsingToolbarLayout> </android.support.design.widget.AppBarLayout> <android.support.v4.widget.NestedScrollView android:layout_width="match_parent" android:layout_height="match_parent" app:layout_behavior="@string/appbar_scrolling_view_behavior" > <WebView android:id="@+id/content" android:layout_width="match_parent" android:layout_height="wrap_content"/> </android.support.v4.widget.NestedScrollView> 

Necesito cargar html dentro de textView, así que hago:

content.setText(Html.fromHtml(htmlString));

Y parece extraño. Mi texto se coloca en la parte inferior de la pantalla. estado inicial

Después de pasar el texto, comienza a parecer normal. después de golpear

Y creo que textview no es sólo ver con estos problemas. He intentado usar webview, pero incluso no muestra contenido (creo que debido a la altura de cálculo incorrecto). Así que necesito webview o textview para corregir el trabajo con NestedScrollView .

PS Si establezco la altura de textview en dp entonces el texto mira correctamente, pero necesito wrap_content para la altura.

Actualizado 08.07.15

Finalmente necesito usar WebView . Alex Facciorusso respuesta en parte funciona, pero me enfrenté a otro tema. Cuando el contenido de WebView tiene alguna altura específica, puedo ver parte del contenido, pero no puedo desplazarme hacia abajo. Ejemplo: Introduzca aquí la descripción de la imagen

Una solución sencilla será agregar una Vista vacía con una altura de 500dp por debajo de su TextView dentro de su LinearLayout. Esa Vista debe empujar hacia arriba su TextView a la posición correcta.

 <android.support.v4.widget.NestedScrollView app:layout_behavior="@string/appbar_scrolling_view_behavior" android:layout_width="match_parent" android:layout_height="match_parent"> <!-- Your scrolling content --> <LinearLayout android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical"> <TextView android:layout_width="match_parent" android:layout_height="match_parent" android:text="@string/random_text" /> <View android:layout_width="match_parent" android:layout_height="500dp"/> </LinearLayout> 

He encontrado una solución:

 <?xml version="1.0" encoding="utf-8"?> <android.support.design.widget.CoordinatorLayout android:id="@+id/main_content" xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" android:layout_width="match_parent" android:layout_height="match_parent" android:fitsSystemWindows="true"> <android.support.v4.widget.NestedScrollView android:id="@+id/nestedScrollView" android:layout_width="match_parent" android:layout_height="match_parent" app:layout_behavior="@string/appbar_scrolling_view_behavior"> <FrameLayout android:layout_width="match_parent" android:layout_height="match_parent" android:minHeight="300dp"> <WebView android:id="@+id/webview" android:layout_width="match_parent" android:layout_height="match_parent" /> </FrameLayout> </android.support.v4.widget.NestedScrollView> <android.support.design.widget.AppBarLayout android:id="@+id/appbar" android:layout_width="match_parent" android:layout_height="256dp" android:fitsSystemWindows="true" android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar"> <android.support.design.widget.CollapsingToolbarLayout android:id="@+id/collapsingToolbar" android:layout_width="match_parent" android:layout_height="match_parent" android:fitsSystemWindows="true" app:contentScrim="?attr/colorPrimary" app:expandedTitleMarginEnd="64dp" app:expandedTitleMarginStart="48dp" app:layout_scrollFlags="scroll|exitUntilCollapsed"> <android.support.v7.widget.Toolbar android:id="@+id/toolbar" android:layout_width="match_parent" android:layout_height="?attr/actionBarSize" app:layout_collapseMode="pin" /> </android.support.design.widget.CollapsingToolbarLayout> </android.support.design.widget.AppBarLayout> </android.support.design.widget.CoordinatorLayout> 

He añadido una minHeight de 500dp a NestedScrollView, y ahora el WebView se ajusta a toda la altura del diseño, y la barra de herramientas de colapso está funcionando.

UPDATED : envuelto WebView con FrameLayout y minHeight añadido a ella.

envuelto WebView con FrameLayout y añadió View (android: layout_height = "800dp") como WebView'minHeight a la misma.

Este es un error, actualiza sdk, reemplaza "compile 'com.android.support:design:22.2.0'" con "compile 'com.android.support:design:22.2.1'" en build.gradle. Eso es trabajo para mí.

Como dijo Mayur Raiyani: este problema se resuelve en la versión 22.2.1 de la biblioteca de soporte: code.google.com/p/android/issues/detail?id=175234 . Gracias a todos por las respuestas.

añadiendo android:layout_gravity="fill_vertical" en NestedScrollView resolverá su problema

  <android.support.v4.widget.NestedScrollView android:layout_width="match_parent" android:layout_gravity="fill_vertical" android:layout_height="match_parent" app:layout_behavior="@string/appbar_scrolling_view_behavior"> <TextView android:layout_width="match_parent" android:layout_height="wrap_content" android:padding="24dp" /> </android.support.v4.widget.NestedScrollView> 
  • ¿Quitar la barra de desplazamiento del cajón de navegación de diseño de soporte de Android?
  • Android: textAllCaps = "false" no funciona para el diseño de TabLayout
  • El margen predeterminado de FloatingActionButton no funciona en lollipop
  • SearchView es invisible con el parámetro collapseActionView desde la biblioteca de diseño 24.1
  • CollapsingToolbarLayout subtitle
  • Doble signo de exclamación en EditText setError cuando se utiliza en un campo de tipo de contraseña
  • BottomSheet con ViewPager y fragmentos?
  • DrawableLeft se está superponiendo con una sugerencia con TextInputLayout android
  • No se puede usar srcCompat para ImageViews en android
  • Eliminar o ocultar el encabezado de navegaciónVer en android
  • Barra de herramientas "Oculto" visible debajo de la barra de estado
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.