Xamarin.Android RelativeLayout

RelativeLayout es un objeto ViewGroup que muestra el elementos secundarios View en posiciones relativas. La posición de View se puede especificar como relativa a los elementos del mismo nivel (por ejemplo, a la izquierda o debajo de un elemento determinado) o en posiciones relativas al área RelativeLayout (por ejemplo, alineada a la parte inferior, a la izquierda del centro).

RelativeLayout es una utilidad muy eficaz para diseñar una interfaz de usuario porque puede eliminar ViewGroup anidados. Si se encuentra usando varios grupos LinearLayout anidados, es posible que pueda reemplazarlos por un único RelativeLayout.

Inicie un nuevo proyecto denominado HelloRelativeLayout.

Abra el archivo Resources/Layout/Main.axml e inserte lo siguiente:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent">
    <TextView
        android:id="@+id/label"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="Type here:"/>
    <EditText
        android:id="@+id/entry"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:background="@android:drawable/editbox_background"
        android:layout_below="@id/label"/>
    <Button
        android:id="@+id/ok"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@id/entry"
        android:layout_alignParentRight="true"
        android:layout_marginLeft="10dip"
        android:text="OK" />
    <Button
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_toLeftOf="@id/ok"
        android:layout_alignTop="@id/ok"
        android:text="Cancel" />
</RelativeLayout>

Observe cada uno de los atributos android:layout_*, como layout_below, layout_alignParentRight y layout_toLeftOf. Al usar RelativeLayout, puede usar estos atributos para describir cómo desea colocar cada View. Cada uno de estos atributos define un tipo diferente de posición relativa. Algunos atributos usan el identificador de recurso de un View del mismo nivel para definir su propia posición relativa. Por ejemplo, el último Button se define para posicionarse a la izquierda y alineada con la parte superior del View identificado por el identificador ok (que es el Button anterior).

Todos los atributos de diseño disponibles se definen en RelativeLayout.LayoutParams.

Asegúrese de cargar este diseño en Método OnCreate():

protected override void OnCreate (Bundle savedInstanceState)
{
    base.OnCreate (savedInstanceState);
    SetContentView (Resource.Layout.Main);
}

El método SetContentView(int) carga el archivo de diseño para Activity, especificado por el identificador de recurso; Resource.Layout.Main hace referencia al archivo de diseño Resources/Layout/Main.axml.

Ejecute la aplicación. Debería ver el siguiente diseño:

Screenshot of a relative layout with a TextView, EditText, and two buttons

Recursos

Partes de esta página son modificaciones basadas en el trabajo creado y compartido por el proyecto de código abierto de Android y se usan según los términos descritos en la licencia de atribución de Creative Commons 2.5.