Red de conocimiento informático - Computadora portátil - diseño absoluto

diseño absoluto

Introducción al diseño:

1. En las versiones anteriores a la 4.0, había cinco diseños, todos los cuales eran subclases de ViewGroup. Son AbsoluteLayout, RelativeLayout, LinearLayout, FrameLayout y TableLayout. TableLayout es una subclase de LinearLayout. (Los chinos son: diseño absoluto, diseño relativo, diseño lineal, diseño de marco, diseño de tabla).

2. Caducar AbsoluteLayout en el sistema operativo 2.2. En la actualidad, TableLayout se utiliza cada vez menos.

3. GridLayout se agregó después de 4.0. (El caso más clásico de GridLayout es la interfaz de la calculadora)

En resumen, hay seis diseños en Android. Actualmente, se recomienda utilizar tres diseños: RelativeLayout, LinearLayout y GridLayout.

LinearLayout:

(1) Concepto: El diseño lineal controla la disposición horizontal o vertical de controles o componentes. En un diseño no lineal, sólo se puede colocar un control en cada fila o columna. Y el diseño lineal no se ajustará. Cuando los controles están dispuestos en el borde del formulario, los controles detrás de ellos están ocultos y no se mostrarán.

La dirección predeterminada del diseño lineal es horizontal (Horizontal). vertical

(2) Atributos comunes de LinearLayout:

1.android:la orientación define la disposición de los controles o componentes en el diseño

Opciones: vertical, horizontal

2.android:layout_width define el ancho del control

Opciones: fill_parent / match_parent/ wrap_content/absolute value

Observaciones: el efecto de fill_parent / match_parent es completo Consistente, se completa todo el control principal. Sin embargo, se recomienda utilizar match_parent desde la versión 2.2. wrap_content se refiere al ancho del control que envuelve exactamente el contenido.

3.android:layout_height define la altura del control

Opciones: fill_parent / match_parent/ wrap_content/absolute value

Observaciones: El efecto de fill_parent / match_parent es exactamente igual, ambos llenan de altura todo el control principal. wrap_content se refiere a la altura del control que envuelve exactamente el contenido.

4.android:id establece la identificación del control. De esta manera, el valor correspondiente se puede generar automáticamente en R.java y se puede llamar a través de findViewById en el programa.

Establezca el formato de id como: android:id = "@+id/nombre de id"

5.android:background establece el color de fondo o la imagen de fondo del control

Por ejemplo: android:fondo="#ffffff"

android:fondo="@drawable/nombre de imagen"

Observaciones:

El color es formato de color RGB y formato ARGB. RGB son los tres colores primarios de rojo, verde y azul. ARGB son los tres colores primarios con alfa, es decir, los tres colores primarios con transparencia.

#FFFFFF representa el blanco

#000000 negro

#FFFFFFFF es completamente opaco

#00FFFFFF es completamente transparente

#88FFFFFF Translúcido

6.android:layout_weight establece el peso del control. Es decir, cada control está distribuido uniformemente en dirección horizontal o vertical.

Nota: si configura el peso en la dirección horizontal, configure android:layout_width en 0dp. Si usa el peso en la dirección vertical, configure android:layout_height en 0dp. De lo contrario, el peso se ve fácilmente interferido por la altura o el ancho y sesgado.

7.android:gravity Este atributo se utiliza para controlar la posición del contenido de la Vista.

Si esta propiedad está definida en un nodo de diseño, las posiciones de todos los controles en el diseño están controladas por esta propiedad.

Si esta propiedad aparece en Button, TextView, EditText y otros controles, se utiliza para controlar la posición del texto en estos controles.

Las opciones son: arriba, abajo, izquierda, derecha, centro_vertical, relleno_vertical, centro, relleno, etc.

Nota: Este atributo es diferente de android:layout_gravity.

8.android:layout_gravity Este atributo se utiliza para establecer la alineación del control en relación con el contenedor.

Las opciones son: arriba, abajo, izquierda, derecha, centro_vertical, centro_horizontal, relleno_vertical, centro, relleno, etc.

No todas estas opciones están disponibles para todos los diseños. En el diseño lineal vertical, android:gravity está en la parte inferior y no tiene ningún efecto; en el diseño lineal horizontal, android:gravity es correcto y no tiene ningún efecto.

Nota: Este atributo es el atributo android:layout_gravity, que es diferente del atributo android:gravity.

(3). Atributos únicos de LinearLayout: resumidos: atributos únicos después de eliminar los atributos públicos

1. La disposición de los componentes en el administrador de diseño de orientación de android

2. android:gravity establece la alineación de los componentes en el administrador de diseño

(4). Atributos únicos de los subelementos de LinearLayout:

1. elementos secundarios en LinearLayout

2. android:layout_gravity La alineación de elementos secundarios en LinearLayout

RelativeLayout:

(1) Concepto: se refiere al diseño basado en posiciones relativas entre controles.

(2) Atributos específicos de RelativeLayout:

1. android:gravity establece la alineación de los subcontroles dentro del contenedor de diseño

2. establece la gestión de diseño Qué control en el dispositivo no se ve afectado por el atributo de gravedad

(3) Atributos únicos de los subelementos RelativeLayout: LayoutParams

A. El primer grupo: se refiere a. la posición relativa entre controles hermanos. El valor de esta propiedad de grupo es la identificación de otro control.

layout_toRightOf El lado derecho del control en el que se encuentra este control

layout_toLeftOf El lado izquierdo del control en el que se encuentra este control

layout_above El lado superior del control este control está activado

p>

layout_below Qué control está debajo de este control

B. El segundo grupo: se refiere a la relación de alineación entre controles hermanos. El valor de esta propiedad de grupo es la identificación de otro control.

layout_alignRight Este control está alineado con la derecha del cual control

layout_alignLeft Este control está alineado con la izquierda del cual control

layout_alignTop Este control está alineado con el parte superior del control

p>

layout_alignBottom Este control está alineado con la parte inferior del control

C. El tercer grupo: se refiere a la relación de alineación entre el control y el diseño principal. El valor de este grupo de atributos es verdadero o falso.

layout_alignParentRight ¿Este control está alineado correctamente con el control de diseño principal?

layout_alignParentLeft ¿Está este control alineado a la izquierda del control de diseño principal?

layout_alignParentTop ¿Está este control alineado con la parte superior del control de diseño principal?

layout_alignParentBottom ¿Este control está alineado con la parte inferior del control de diseño principal?

layout_centerInParent ¿Este control está centrado en el control de diseño principal?

layout_centerVertical ¿Este control está ubicado en el centro vertical del control de diseño principal?

layout_centerHorizontal ¿Este control está ubicado en el centro horizontal del control de diseño principal?

GridLayout: Diseño de cuadrícula

(1), atributos de diseño de GridLayout:

1. android:alignmentMode

Descripción del atributo: Configuración modo de alineación del diseño. Puede tomar los siguientes valores:

alignBounds: alinea los límites de la subvista.

alignMargins: alinea los márgenes de la subvista.

2. android:columnCount

Descripción del atributo: el número máximo de columnas de GridLayout

3. android:rowCount

Descripción del atributo : GridLayout El número máximo de filas

4. android:orientation

Descripción del atributo: la dirección del diseño de los subelementos en GridLayout. Están disponibles los siguientes valores:

horizontal: diseño horizontal.

vertical -- diseño vertical.

5. android:columnOrderPreserved

Descripción del atributo: establece si el diseño de la cuadrícula conserva los números de columna. El valor predeterminado es verdadero.

6. android:rowOrderPreserved

Descripción del atributo: establece si el diseño de la cuadrícula conserva los números de fila. El valor predeterminado es verdadero.

7. android:useDefaultMargins

Descripción del atributo: configure GridLayout para usar márgenes predeterminados. El valor predeterminado es falso.

(2) Atributos del subelemento GridLayout:

1. android:layout_column

Descripción del atributo: muestra la columna del control. Por ejemplo, android:layout_column="0" significa que el control se muestra en la columna 1; android:layout_column="1" significa que el control se muestra en la columna 2;

2. android:layout_row

Descripción del atributo: la fila donde se encuentra el control. Por ejemplo, android:layout_row="0" significa que el control se muestra en la fila 1; android:layout_row="1" significa que el control se muestra en la fila 2. Es similar a android:layout_column.

3. android:layout_columnSpan

Descripción del atributo: fusión de columnas. Ese es el número de columnas ocupadas por el control. Por ejemplo, android:layout_columnSpan="2" significa que el control ocupa 2 columnas.

4. android:layout_rowSpan

Descripción del atributo: fusión de filas. Ese es el número de filas ocupadas por el control. Por ejemplo, android:layout_rowSpan="2" significa que el control ocupa 2 filas.

5. android:layout_gravity

Descripción del atributo: el método de diseño de este control. Valores de opción:

arriba: coloca el control encima del contenedor sin cambiar el tamaño del control.

bottom: el control se coloca en la parte inferior del contenedor sin cambiar el tamaño del control.

izquierda: el control se coloca en el lado izquierdo del contenedor sin cambiar el tamaño del control.

derecha: el control se coloca en el lado derecho del contenedor sin cambiar el tamaño del control.

center_vertical: el control se coloca en el centro vertical del contenedor sin cambiar el tamaño del control.

fill_vertical: extiende el control verticalmente si es necesario.

center_horizontal: el control se coloca en el centro horizontal del contenedor sin cambiar el tamaño del control.

fill_horizontal: extiende el control horizontalmente si es necesario.

centro: el control se coloca en el medio del contenedor sin cambiar el tamaño del control.

relleno: extienda el control horizontal y verticalmente si es necesario.

clip_vertical: recorte vertical, la dirección del recorte se basa en las propiedades de diseño superior/inferior del control. Si la gravedad del control es vertical: si su gravedad es superior, corte la parte inferior del control; si la gravedad del control es inferior, corte la parte superior del control.

clip_horizontal: recorte horizontal, la dirección del recorte se basa en las propiedades de diseño izquierda/derecha del control. Si la gravedad del control es horizontal: si su gravedad es hacia la izquierda, entonces corte el lado derecho del control; si la gravedad del control es derecha, corte el lado izquierdo del control;

inicio: el control se coloca al principio del contenedor sin cambiar el tamaño del control.

end: el control se coloca al final del contenedor sin cambiar el tamaño del control.