2012-01-29 18 views
13

tengo la siguiente distribución:RelativeLayout - Se desplaza hacia abajo

<?xml version="1.0" encoding="utf-8"?> 
<RelativeLayout 
    android:id="@+navigate/RLayout" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    android:background="#ABABAB" 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    > 
    <ImageView 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:textSize="10dp" 
     android:textStyle="bold" 
     android:id="@+id/myid" 
     android:layout_centerHorizontal="true" 
     android:src="@drawable/myid" 
     android:layout_marginTop="15dp" />. 
    <RelativeLayout android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:layout_gravity="center_horizontal" 
     android:layout_margin="10dp" 
     android:orientation="vertical" 
     android:id="@+id/firstRectangle" 
     android:background="@drawable/bg" 
     android:layout_below="@+id/myid" > 
    <TextView 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:textSize="10dp" 
     android:textStyle="bold|italic" 
     android:textColor="#000000" 
     android:id="@+id/hotelinfos" 
     android:layout_marginTop="10dp" 
     android:layout_marginLeft="10dp" 
     android:layout_below="@+id/myid" 
     android:layout_alignLeft="@+id/myid"/> 
    <TextView 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:textSize="10dp" 
     android:textStyle="bold" 
     android:textColor="#000000" 
     android:id="@+id/hotelname" 
     android:layout_below="@+id/hotelinfos" 
     android:layout_alignLeft="@+id/hotelinfos" 
     android:layout_marginTop="10dp" /> 
    <TextView 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:textSize="10dp" 
     android:textColor="#000000" 
     android:id="@+id/hoteladdress" 
     android:layout_below="@+id/hotelname" 
     android:layout_alignLeft="@+id/hotelname" 
     android:layout_marginTop="10dp" /> 
    <TextView 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:textSize="10dp" 
     android:id="@+id/hotelphone" 
     android:layout_below="@+id/hoteladdress" 
     android:layout_alignLeft="@+id/hoteladdress" 
     android:layout_marginTop="10dp" 
     android:textColor="#12C" 
     android:textStyle="bold|italic" 
     android:onClick="onClick" 
     android:clickable="true" /> 
    <TextView 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:textSize="10dp" 
     android:textColor="#12C" 
     android:onClick="onClick" 
     android:clickable="true" 
     android:textStyle="bold|italic" 
     android:id="@+id/hotelemail" 
     android:layout_below="@+id/hotelphone" 
     android:layout_alignLeft="@+id/hotelphone" 
     android:layout_marginTop="10dp" 
     android:paddingBottom="10dp" /> 
    <ImageView 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:id="@+id/picture" 
     android:layout_below="@+id/myid" 
     android:layout_alignParentRight="true" 
     android:layout_marginRight="10dp"  
     android:layout_marginTop="10dp"/> 
    </RelativeLayout> 
    <RelativeLayout 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:layout_gravity="center_horizontal" 
     android:layout_margin="10dp" 
     android:orientation="vertical" 
     android:id="@+id/SecondRectangle" 
     android:background="@drawable/bg" 
     android:layout_below="@+id/firstRectangle" > 
    <TextView 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:textSize="10dp" 
     android:textColor="#000000" 
     android:textStyle="bold|italic" 
     android:id="@+id/bookinginfos" 
     android:layout_below="@+id/firstRectangle" 
     android:layout_alignLeft="@+id/firstRectangle" 
     android:layout_marginLeft="10dp" 
     android:layout_marginTop="10dp" /> 
    <TextView 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:textSize="10dp" 
     android:textColor="#000000" 
     android:id="@+id/pnr" 
     android:layout_below="@+id/bookinginfos" 
     android:layout_alignLeft="@+id/bookinginfos" 
     android:layout_marginTop="10dp" 
     android:layout_marginRight="10dp" /> 
    <TextView 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:textSize="10dp" 
     android:textColor="#000000" 
     android:id="@+id/segmentCode" 
     android:layout_below="@+id/pnr" 
     android:layout_alignLeft="@+id/pnr" 
     android:layout_marginRight="10dp" /> 
    <TextView 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:textSize="10dp" 
     android:textColor="#000000" 
     android:id="@+id/checkin" 
     android:layout_below="@+id/segmentCode" 
     android:layout_alignLeft="@+id/segmentCode" 
     android:layout_marginTop="10dp" 
     android:layout_marginRight="10dp" /> 
    <TextView 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:textSize="10dp" 
     android:textColor="#000000" 
     android:id="@+id/checkout" 
     android:layout_below="@+id/checkin" 
     android:layout_alignLeft="@+id/checkin" 
     android:layout_marginRight="10dp" /> 
    <TextView 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:textSize="10dp" 
     android:textColor="#000000" 
     android:id="@+id/nights"  
     android:layout_below="@+id/checkout" 
     android:layout_alignLeft="@+id/checkout" 
     android:layout_marginRight="10dp" /> 
    <TextView 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:textSize="10dp" 
     android:textColor="#000000" 
     android:id="@+id/roomType" 
     android:layout_below="@+id/nights" 
     android:layout_alignLeft="@+id/nights" 
     android:layout_marginTop="10dp" 
     android:layout_marginRight="10dp" /> 
    <TextView 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:textSize="10dp" 
     android:textColor="#000000" 
     android:id="@+id/boardBasis" 
     android:layout_below="@+id/roomType" 
     android:layout_alignLeft="@+id/roomType" 
     android:layout_marginRight="10dp" /> 
    <TextView 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:textSize="10dp" 
     android:textColor="#000000" 
     android:id="@+id/paxNames" 
     android:layout_below="@+id/boardBasis" 
     android:layout_alignLeft="@+id/boardBasis" 
     android:layout_marginTop="10dp" 
     android:layout_marginRight="10dp" 
     android:paddingBottom="10dp" /> 
    </RelativeLayout> 
    <RelativeLayout 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:layout_gravity="center_horizontal" 
     android:layout_margin="10dp" 
     android:orientation="vertical" 
     android:id="@+id/thirdRectangle" 
     android:background="@drawable/bg" 
     android:layout_below="@+id/SecondRectangle" > 
      <ScrollView android:layout_width="fill_parent" android:layout_height="wrap_content"> 

    <TextView 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:textSize="10dp" 
     android:textColor="#000000" 
     android:textStyle="bold|italic" 
     android:id="@+id/forHotel" 
     android:layout_below="@+id/SecondRectangle" 
     android:layout_alignLeft="@+id/SecondRectangle" 
     android:layout_marginLeft="10dp" /> 
    <TextView 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:textSize="10dp" 
     android:textColor="#000000" 
     android:id="@+id/supplierCode" 
     android:layout_below="@+id/forHotel" 
     android:layout_alignLeft="@+id/forHotel" 
     android:layout_marginTop="10dp" 
     android:layout_marginRight="10dp" 
     android:paddingBottom="10dp"/> 
     </ScrollView> 

    </RelativeLayout> 
</RelativeLayout> 

me gustaría para desplazarse en esta presentación, ya que la última parte de la RelativeLayout no es visible! Pero no sé cómo hacerlo. Intenté agregar una vista de desplazamiento, pero obtuve el error: ¡scrollview solo puede alojar un hijo directo! ¿Tienes algún consejo para mí?

Gracias de antemano por su ayuda!

+0

nos muestras su archivo XML con ScrollView añadido, porque por lo que puedo ver, debería funcionar usando una vista de desplazamiento, tal vez yo acabas de hacer un descuido – joni

Respuesta

41

ScrollView espera una única visión del niño y en su diseño que tiene 2 TextView. Para que el ScrollView funcione, debe envolver su TextView en un grupo de visualización como LinearLayout o RelativeLayout.

código Editado:

<?xml version="1.0" encoding="utf-8"?> 
<ScrollView android:layout_width="match_parent" android:layout_height="match_parent"> 
<RelativeLayout 
    android:id="@+navigate/RLayout" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:background="#ABABAB" 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    > 
// ... THE REST OF YOUR CODE 
</RelativeLayout> 
</ScrollView> 
+0

Hola slukian! De hecho, no estoy seguro de que ScrollView sea la solución adecuada para mí. Quiero moverme en el Layout relativo cuando el usuario toca la pantalla ... Simplemente no sé cómo hacerlo><" –

+0

@JohnSmith He editado mi respuesta para que tenga en' ScrollView' el último 'RelativeLayout 'thirdRectangle. No entiendo lo que estás tratando de hacer: muévete (cómo exactamente" muévete ") el relativeLayout (¿Qué RelativeLayout?) cuando el usuario toque la pantalla. ¿Podrías explicarme? – Luksprog

+0

Bueno, mi último pariente es Hided (porque el diseño es más grande que la pantalla del teléfono!) Y no puedo desplazarme hacia abajo ... Android no hace eso automáticamente? –

3

Tome este código justo encima desea que el desplazamiento para iniciar:

<ScrollView 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    > 

luego terminan con cuando se desea detenerlo.

3

Dado que scrollview solo puede tener un hijo, el hijo puede ser cualquier layout. Estar en LinearLayout o RelativeLayout. Entonces debería ser algo como esto. <ScrollView><RelativeLayout></RelativeLayout></ScrollView>

Su código terminaría como este

<RelativeLayout 
android:id="@+navigate/RLayout" 
android:layout_width="fill_parent" 
android:layout_height="fill_parent" 
android:background="#ABABAB" 
xmlns:android="http://schemas.android.com/apk/res/android" 
> 

<ScrollView> 
android:id="@+navigate/Scrollview" 
android:layout_width="fill_parent" 
android:layout_height="fill_parent"> 

<RelativeLayout 
android:id="@+navigate/RLayout02" 
android:layout_width="fill_parent" 
android:layout_height="fill_parent" 

> 
<ImageView 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:textSize="10dp" 
    android:textStyle="bold" 
    android:id="@+id/hcorpo" 
    android:layout_centerHorizontal="true" 
    android:src="@drawable/hcorpo" 
    android:layout_marginTop="15dp" />. 
<RelativeLayout android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:layout_gravity="center_horizontal" 
    android:layout_margin="10dp" 
    android:orientation="vertical" 
    android:id="@+id/firstRectangle" 
    android:background="@drawable/bg" 
    android:layout_below="@+id/hcorpo" > 
<TextView 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:textSize="10dp" 
    android:textStyle="bold|italic" 
    android:textColor="#000000" 
    android:id="@+id/hotelinfos" 
    android:layout_marginTop="10dp" 
    android:layout_marginLeft="10dp" 
    android:layout_below="@+id/hcorpo" 
    android:layout_alignLeft="@+id/hcorpo"/> 
<TextView 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:textSize="10dp" 
    android:textStyle="bold" 
    android:textColor="#000000" 
    android:id="@+id/hotelname" 
    android:layout_below="@+id/hotelinfos" 
    android:layout_alignLeft="@+id/hotelinfos" 
    android:layout_marginTop="10dp" /> 
<TextView 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:textSize="10dp" 
    android:textColor="#000000" 
    android:id="@+id/hoteladdress" 
    android:layout_below="@+id/hotelname" 
    android:layout_alignLeft="@+id/hotelname" 
    android:layout_marginTop="10dp" /> 
<TextView 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:textSize="10dp" 
    android:id="@+id/hotelphone" 
    android:layout_below="@+id/hoteladdress" 
    android:layout_alignLeft="@+id/hoteladdress" 
    android:layout_marginTop="10dp" 
    android:textColor="#12C" 
    android:textStyle="bold|italic" 
    android:onClick="onClick" 
    android:clickable="true" /> 
<TextView 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:textSize="10dp" 
    android:textColor="#12C" 
    android:onClick="onClick" 
    android:clickable="true" 
    android:textStyle="bold|italic" 
    android:id="@+id/hotelemail" 
    android:layout_below="@+id/hotelphone" 
    android:layout_alignLeft="@+id/hotelphone" 
    android:layout_marginTop="10dp" 
    android:paddingBottom="10dp" /> 
<ImageView 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:id="@+id/picture" 
    android:layout_below="@+id/hcorpo" 
    android:layout_alignParentRight="true" 
    android:layout_marginRight="10dp"  
    android:layout_marginTop="10dp"/> 
</RelativeLayout> 
<RelativeLayout 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:layout_gravity="center_horizontal" 
    android:layout_margin="10dp" 
    android:orientation="vertical" 
    android:id="@+id/SecondRectangle" 
    android:background="@drawable/bg" 
    android:layout_below="@+id/firstRectangle" > 
<TextView 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:textSize="10dp" 
    android:textColor="#000000" 
    android:textStyle="bold|italic" 
    android:id="@+id/bookinginfos" 
    android:layout_below="@+id/firstRectangle" 
    android:layout_alignLeft="@+id/firstRectangle" 
    android:layout_marginLeft="10dp" 
    android:layout_marginTop="10dp" /> 
<TextView 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:textSize="10dp" 
    android:textColor="#000000" 
    android:id="@+id/pnr" 
    android:layout_below="@+id/bookinginfos" 
    android:layout_alignLeft="@+id/bookinginfos" 
    android:layout_marginTop="10dp" 
    android:layout_marginRight="10dp" /> 
<TextView 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:textSize="10dp" 
    android:textColor="#000000" 
    android:id="@+id/segmentCode" 
    android:layout_below="@+id/pnr" 
    android:layout_alignLeft="@+id/pnr" 
    android:layout_marginRight="10dp" /> 
<TextView 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:textSize="10dp" 
    android:textColor="#000000" 
    android:id="@+id/checkin" 
    android:layout_below="@+id/segmentCode" 
    android:layout_alignLeft="@+id/segmentCode" 
    android:layout_marginTop="10dp" 
    android:layout_marginRight="10dp" /> 
<TextView 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:textSize="10dp" 
    android:textColor="#000000" 
    android:id="@+id/checkout" 
    android:layout_below="@+id/checkin" 
    android:layout_alignLeft="@+id/checkin" 
    android:layout_marginRight="10dp" /> 
<TextView 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:textSize="10dp" 
    android:textColor="#000000" 
    android:id="@+id/nights"  
    android:layout_below="@+id/checkout" 
    android:layout_alignLeft="@+id/checkout" 
    android:layout_marginRight="10dp" /> 
<TextView 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:textSize="10dp" 
    android:textColor="#000000" 
    android:id="@+id/roomType" 
    android:layout_below="@+id/nights" 
    android:layout_alignLeft="@+id/nights" 
    android:layout_marginTop="10dp" 
    android:layout_marginRight="10dp" /> 
<TextView 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:textSize="10dp" 
    android:textColor="#000000" 
    android:id="@+id/boardBasis" 
    android:layout_below="@+id/roomType" 
    android:layout_alignLeft="@+id/roomType" 
    android:layout_marginRight="10dp" /> 
<TextView 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:textSize="10dp" 
    android:textColor="#000000" 
    android:id="@+id/paxNames" 
    android:layout_below="@+id/boardBasis" 
    android:layout_alignLeft="@+id/boardBasis" 
    android:layout_marginTop="10dp" 
    android:layout_marginRight="10dp" 
    android:paddingBottom="10dp" /> 
</RelativeLayout> 
<RelativeLayout 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:layout_gravity="center_horizontal" 
    android:layout_margin="10dp" 
    android:orientation="vertical" 
    android:id="@+id/thirdRectangle" 
    android:background="@drawable/bg" 
    android:layout_below="@+id/SecondRectangle" > 

<TextView 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:textSize="10dp" 
    android:textColor="#000000" 
    android:textStyle="bold|italic" 
    android:id="@+id/forHotel" 
    android:layout_below="@+id/SecondRectangle" 
    android:layout_alignLeft="@+id/SecondRectangle" 
    android:layout_marginLeft="10dp" /> 
<TextView 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:textSize="10dp" 
    android:textColor="#000000" 
    android:id="@+id/supplierCode" 
    android:layout_below="@+id/forHotel" 
    android:layout_alignLeft="@+id/forHotel" 
    android:layout_marginTop="10dp" 
    android:layout_marginRight="10dp" 
    android:paddingBottom="10dp"/> 


</RelativeLayout> 
</RelativeLayout> 

</ScrollView> 

</RelativeLayout> 
3

Su última RelativeLayout

<RelativeLayout 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:layout_gravity="center_horizontal" 
     android:layout_margin="10dp" 
     android:orientation="vertical" 
     android:id="@+id/thirdRectangle" 
     android:background="@drawable/bg" 
     android:layout_below="@+id/SecondRectangle" > 
      <ScrollView android:layout_width="fill_parent" android:layout_height="wrap_content"> 

    <TextView 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:textSize="10dp" 
     android:textColor="#000000" 
     android:textStyle="bold|italic" 
     android:id="@+id/forHotel" 
     android:layout_below="@+id/SecondRectangle" 
     android:layout_alignLeft="@+id/SecondRectangle" 
     android:layout_marginLeft="10dp" /> 
    <TextView 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:textSize="10dp" 
     android:textColor="#000000" 
     android:id="@+id/supplierCode" 
     android:layout_below="@+id/forHotel" 
     android:layout_alignLeft="@+id/forHotel" 
     android:layout_marginTop="10dp" 
     android:layout_marginRight="10dp" 
     android:paddingBottom="10dp"/> 
     </ScrollView> 

    </RelativeLayout> 

debe tener este lugar:

<ScrollView android:layout_width="fill_parent" android:layout_height="wrap_content"> 
<RelativeLayout 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:layout_gravity="center_horizontal" 
     android:layout_margin="10dp" 
     android:orientation="vertical" 
     android:id="@+id/thirdRectangle" 
     android:background="@drawable/bg" 
     android:layout_below="@+id/SecondRectangle" > 


    <TextView 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:textSize="10dp" 
     android:textColor="#000000" 
     android:textStyle="bold|italic" 
     android:id="@+id/forHotel" 
     android:layout_below="@+id/SecondRectangle" 
     android:layout_alignLeft="@+id/SecondRectangle" 
     android:layout_marginLeft="10dp" /> 
    <TextView 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:textSize="10dp" 
     android:textColor="#000000" 
     android:id="@+id/supplierCode" 
     android:layout_below="@+id/forHotel" 
     android:layout_alignLeft="@+id/forHotel" 
     android:layout_marginTop="10dp" 
     android:layout_marginRight="10dp" 
     android:paddingBottom="10dp"/> 

    </RelativeLayout> 
</ScrollView> 
Cuestiones relacionadas