Si ScrollView sólo admite a un hijo directo, ¿cómo se supone que puedo hacer que un diseño completo se pueda desplazar?

Tengo 3 vistas de texto en un diseño, donde el texto pinta un tad en la parte inferior de mi droide 2 … hhow puedo asegurar que todo el texto es visible y el usuario puede desplazarse hacia abajo (simplemente con el dedo) para ver el Resto de mi texto

¡Gracias!

EDITAR:

<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent"> <ImageButton android:id="@+id/ImageButton01" android:layout_width="wrap_content" android:layout_height="wrap_content" android:background="@drawable/def" android:layout_gravity="top|center"> </ImageButton> <TextView android:id="@+id/oneView" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/one_def" android:layout_gravity="left|center" android:textSize="13dip"></TextView> <TextView android:text="@string/two_def" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="left|center" android:id="@+id/twoView" android:textSize="13dip"></TextView> <TextView android:text="@string/threedef_def" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="left|center" android:id="@+id/threeView" android:textSize="13dip"></TextView> </LinearLayout> 

Simplemente envuelva su LinearLayout actual con ScrollView. Así que debe ser smth como este:

 <?xml version="1.0" encoding="utf-8"?> <ScrollView xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent"> <LinearLayout android:orientation="vertical" android:layout_width="match_parent" android:layout_height="match_parent"> <ImageButton ... /> <TextView ... /> <TextView ... /> <TextView ... /> </LinearLayout> </ScrollView> 

El hijo directo de ScrollView debería ser otro diseño que admita varios niños, como RelativeLayout o LinearLayout.

Funcionó perfectamente.

Aquí está mi diseño como un ejemplo de desplazamiento de un elemento de contenido con dos cabeceras encima que permanecen estacionarias.

 <?xml version="1.0" encoding="utf-8"?> <LinearLayout android:id="@+id/mainMenu" android:layout_width="fill_parent" android:layout_height="fill_parent" android:orientation="vertical" android:background="#FFFFFFFF" xmlns:android="http://schemas.android.com/apk/res/android" > <FrameLayout android:id="@+id/widget112" android:layout_width="wrap_content" android:layout_height="wrap_content" > <ImageView android:id="@+id/chemo_pro_header" android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/chemo_pro_header" > </ImageView> <ImageButton android:id="@+id/menu_btn" android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/menu_btn_off" android:background="@null" android:layout_gravity="right" android:padding="8px" > </ImageButton> </FrameLayout> <ImageView android:layout_width="wrap_content" android:id="@+id/news_head" android:src="@drawable/news_head" android:layout_height="wrap_content"> </ImageView> <ScrollView xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent"> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent"> <TextView android:layout_marginLeft="6dip" android:text="Monday, November 29th, 2010" android:id="@+id/newsDateStamp" android:layout_width="wrap_content" android:layout_height="wrap_content" android:typeface="serif" android:textStyle="italic" android:textColor="#ff999999"></TextView> <TextView android:layout_marginLeft="6dip" android:text="Normal Article Titles Fit on These Lines and have room to be this long" android:textSize="16sp" android:typeface="serif" android:textStyle="bold" android:textColor="#ff000000" android:id="@+id/newsTitle" android:layout_width="wrap_content" android:layout_height="wrap_content"></TextView> <TextView android:layout_marginLeft="6dip" android:text="Article source" android:id="@+id/newsSource" android:layout_width="wrap_content" android:layout_height="wrap_content" android:typeface="serif" android:textStyle="italic" android:textColor="#ff999999"></TextView> <ImageView android:layout_width="wrap_content" android:id="@+id/news_image" android:src="@drawable/news_image" android:layout_height="wrap_content" android:layout_gravity="center"> </ImageView> <TextView android:text="Lorem ipsum dolor sit amet, consectetur adipiscing elit. Cras in volutpat enim. Donec tempus vestibulum risus in pellentesque. Etiam eget lorem at velit facilisis dapibus.\n\nNunc dolor sem, semper vel vestibulum eu, ultrices tempus augue. Donec ligula erat, tempor dignissim imperdiet et, rutrum sed nisi. Praesent dignissim nulla ullamcorper metus facilisis auctor. Duis elementum commodo dictum. Duis rhoncus hendrerit lectus in tincidunt. Ut est neque, rutrum ut auctor ac, aliquet ut massa. Nullam at felis ipsum. Curabitur adipiscing sodales massa, sed lobortis lectus ultrices quis. Integer lobortis cursus tellus sed tempus. Ut convallis ullamcorper interdum. Integer iaculis feugiat ultricies.\n\nNunc dolor sem, semper vel vestibulum eu, ultrices tempus augue. Donec ligula erat, tempor dignissim imperdiet et, rutrum sed nisi. Praesent dignissim nulla ullamcorper metus facilisis auctor. Duis elementum commodo dictum. Duis rhoncus hendrerit lectus in tincidunt. Ut est neque, rutrum ut auctor ac, aliquet ut massa." android:layout_marginTop="6dip" android:layout_marginBottom="6dip" android:typeface="serif" android:id="@+id/newsBody" android:layout_marginLeft="6dip" android:layout_height="wrap_content" android:layout_width="wrap_content" android:textColor="#ff000000" android:layout_marginRight="6dip"></TextView> </LinearLayout> </ScrollView> </LinearLayout> 

Si desea desplazar todo el diseño sólo hacer scrollview el padre y hacer diseño lineal o cualquier otro diseño como su primer hijo y luego añadir otros diseños dentro de ese … ejemplo:

 <scrollview> <linearLayout id = child1> <Textview/> <Textview/> <button/> <LinearLayout> <textview/> </LinearLayout </LinearLayout> </scrollview 

Aquí la vista de desplazamiento tiene sólo un hijo 'child1' resto todos están dentro de él y por lo tanto toda la disposición es desplazable

  • "Unhandled Event Loop Exception" al hacer algo en Android XML
  • Android: Cómo crear CursorAdapter desde los datos en un archivo XML
  • Error: Los tipos de cadena no están permitidos (en 'layout_height' con el valor 'wrap content'). activity_main.xml
  • Modificación de la imagen de recurso de la barra de progreso
  • ¿Cómo podemos cambiar el icono de la aplicación Android de forma dinámica en Android
  • La biblioteca appcompat importada tiene errores
  • No se puede crear un ToggleButton en Eclipse IDE para android
  • Accidente de transición de elemento compartido para dispositivos Lollipop
  • Cambiar el tema de android de cordova config.xml
  • ¿Cómo podemos utilizar android: inputType en EditTextPreference?
  • Problemas con la carga de anuncios de AdMob en la aplicación
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.