Cómo hacer que todos los contenidos en la página de Android subir
En mi página de aplicación de Android tengo utilizar un control deslizante, textview y un gridview para mostrar imágenes. Ahora el problema es que cuando me desplazo hacia arriba, sólo las imágenes de gridview se desplaza y el resto de las cosas permanece estático. Por favor, ayúdame ¿Cómo puedo hacer que todos los contenidos de la página se muevan mientras me desplazo?
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" android:orientation="vertical" >`enter code here` <ViewFlipper android:id="@+id/viewFlipper1" android:layout_width="match_parent" android:layout_height="wrap_content" > <ImageView android:layout_width="fill_parent" android:layout_height="150dp" android:src="@drawable/one" /> <ImageView android:layout_width="fill_parent" android:layout_height="150dp" android:src="@drawable/two" /> <ImageView android:layout_width="fill_parent" android:layout_height="150dp" android:src="@drawable/three" /> <ImageView android:layout_width="fill_parent" android:layout_height="150dp" android:src="@drawable/banner1" /> <ImageView android:layout_width="fill_parent" android:layout_height="150dp" android:src="@drawable/banner2" /> <ImageView android:layout_width="fill_parent" android:layout_height="150dp" android:src="@drawable/banner3" /> <ImageView android:layout_width="fill_parent" android:layout_height="150dp" android:src="@drawable/banner4" /> </ViewFlipper> <TextView android:id="@+id/textView1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Shop For" android:textAppearance="?android:attr/textAppearanceMedium" android:layout_marginLeft="100dp" /> <GridView android:id="@+id/gridView1" android:layout_width="fill_parent" android:layout_height="fill_parent" android:columnWidth="150dp" android:gravity="center" android:horizontalSpacing="1dp" android:numColumns="2" android:padding="28dp" android:stretchMode="none" android:verticalSpacing="1dp" android:visibility="visible" > </GridView> </LinearLayout>
Coloque todo su código en la vista de desplazamiento use el siguiente código
<?xml version="1.0" encoding="utf-8"?> <ScrollView xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="wrap_content" android:layout_height="wrap_content" > <LinearLayout android:layout_width="fill_parent" android:layout_height="fill_parent" android:orientation="vertical" > <ViewFlipper android:id="@+id/viewFlipper1" android:layout_width="match_parent" android:layout_height="wrap_content" > <ImageView android:layout_width="fill_parent" android:layout_height="150dp" android:src="@drawable/one" /> <ImageView android:layout_width="fill_parent" android:layout_height="150dp" android:src="@drawable/two" /> <ImageView android:layout_width="fill_parent" android:layout_height="150dp" android:src="@drawable/three" /> <ImageView android:layout_width="fill_parent" android:layout_height="150dp" android:src="@drawable/banner1" /> <ImageView android:layout_width="fill_parent" android:layout_height="150dp" android:src="@drawable/banner2" /> <ImageView android:layout_width="fill_parent" android:layout_height="150dp" android:src="@drawable/banner3" /> <ImageView android:layout_width="fill_parent" android:layout_height="150dp" android:src="@drawable/banner4" /> </ViewFlipper> <TextView android:id="@+id/textView1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Shop For" android:textAppearance="?android:attr/textAppearanceMedium" android:layout_marginLeft="100dp" /> <GridView android:id="@+id/gridView1" android:layout_width="fill_parent" android:layout_height="fill_parent" android:columnWidth="150dp" android:gravity="center" android:horizontalSpacing="1dp" android:numColumns="2" android:padding="28dp" android:stretchMode="none" android:verticalSpacing="1dp" android:visibility="visible" /> </LinearLayout> </ScrollView>
Si tiene algún problema no dude en comentar.
Modificar el archivo xml de diseño como a continuación, que podría resolver su problema, supongo.
<?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:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="vertical" > <ViewFlipper android:id="@+id/viewFlipper1" android:layout_width="match_parent" android:layout_height="wrap_content" > <ImageView android:layout_width="fill_parent" android:layout_height="150dp" android:src="@drawable/one" /> <ImageView android:layout_width="fill_parent" android:layout_height="150dp" android:src="@drawable/two" /> <ImageView android:layout_width="fill_parent" android:layout_height="150dp" android:src="@drawable/three" /> <ImageView android:layout_width="fill_parent" android:layout_height="150dp" android:src="@drawable/banner1" /> <ImageView android:layout_width="fill_parent" android:layout_height="150dp" android:src="@drawable/banner2" /> <ImageView android:layout_width="fill_parent" android:layout_height="150dp" android:src="@drawable/banner3" /> <ImageView android:layout_width="fill_parent" android:layout_height="150dp" android:src="@drawable/banner4" /> </ViewFlipper> <TextView android:id="@+id/textView1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Shop For" android:textAppearance="?android:attr/textAppearanceMedium" android:layout_marginLeft="100dp" /> <GridView android:id="@+id/gridView1" android:layout_width="fill_parent" android:layout_height="fill_parent" android:columnWidth="150dp" android:gravity="center" android:horizontalSpacing="1dp" android:numColumns="2" android:padding="28dp" android:stretchMode="none" android:verticalSpacing="1dp" android:visibility="visible" > </GridView> </LinearLayout> </ScrollView>
Esto podría haber ocurrido ya que no está utilizando ScrollView
. ScrollView
debe contener sólo una vista secundaria. Por lo tanto, use LinearLayout
como una vista principal para todas las demás vistas y use este LinearLayout
como vista secundaria en ScrollView
.
También Gridview
actúa como Scrollview
sí, por lo tanto, en su caso, el GridView
se desplazaba, pero las otras vistas no se desplazaban.