Pregunta

He tenido una serie de problemas con ScrollViews. Recientemente he intentado crear un LinearView cuyo contenido excede el tamaño de la pantalla así que creé con el nuevo diseño elemento padre ScrollView y establecer su anchura y la altura de los valores personalizados (el diseño tiene que aparecer como de diálogo - no llenar toda la pantalla).

Cuando el elemento se selecciona el borde rojo parece abrazar el rectángulo de predefinido ScrollView LayoutWidth y LayoutHeight lo cual está bien. Entonces coloqué dentro del LinearView y establecer los valores LayoutWidth y LayoutHeight a fill_parent.

A continuación, cuando empecé a añadir los elementos en el LinearLayout la frontera (lile rojo) envueltos los elementos insertados, no toda la matriz ScrollView.

Así que cuando el contenido de la LinearLayout (hijo de ScrollView) supera el tamaño de la matriz ScrollView el rollo no apareció y los elementos inferiores son simplemente invisibles.

De todos modos .. en ese caso el contenido XML era demasiado extensa para publicar la pregunta aquí y ahora estoy teniendo el mismo problema con el más sencillo ejemplo.

La siguiente parte de la disposición está destinada a ser un EditarTexto desplazable (en caso de la entrada del usuario supera el tamaño primario del widget). Quería establecer la altura EditarTexto a 120px, así que me puse la altura ScrollView padres a 120px y el niño EditarTexto a fill_parent. De nuevo en este caso el EditarTexto no llena toda la zona ScrollView sino una sola línea:

 <ScrollView android:layout_height="120px" android:layout_width="fill_parent">
<EditText android:id="@+id/txtContent" android:layout_height="fill_parent" android:layout_width="fill_parent" android:text="TestContent">
</EditText>
</ScrollView>

¿Alguien sabe cómo modificar el contenido por encima de lo que el EditarTexto llena el control de los padres y en caso de entrada del usuario supera el tamaño de control aparece el rollo?

Gracias!

Editar

A continuación se presentan las capturas de pantalla del diseño

eliminado enlace ImageShack muertos
eliminado enlace ImageShack muertos

¿Fue útil?

Solución

Su EditarTexto debe tener una altura de wrap_content. fill_parent no tiene sentido en un ScrollView. Si desea que el EditText para llenar su ScrollView cuando su contenido es menor que el ScrollView, utilice android:fillViewport="true" en el ScrollView.

Otros consejos

Sí, como dijo Romain, necesidades ScrollView siguientes combo.

  1. para ScrollView android:fillViewport="true"
  2. disponible para niños ScrollView android:layout_height="wrap_content"
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top