Diseño de marco de Android

El diseño del marco está diseñado para bloquear un área en la pantalla para mostrar un solo elemento. Generalmente, FrameLayout debe usarse para contener una sola vista secundaria, porque puede ser difícil organizar las vistas secundarias de una manera que sea escalable a diferentes tamaños de pantalla sin que los elementos secundarios se superpongan entre sí.

Sin embargo, puede agregar varios niños a un FrameLayout y controlar su posición dentro del FrameLayout asignando gravedad a cada niño, utilizando el atributo android: layout_gravity.

Disposición del marco

Atributos de FrameLayout

A continuación se muestran los atributos importantes específicos de FrameLayout:

No Señor Atributo y descripción
1

android:id

Este es el ID que identifica de forma única el diseño.

2

android:foreground

Esto define el elemento de dibujo para dibujar sobre el contenido y los posibles valores pueden ser un valor de color, en forma de "#rgb", "#argb", "#rrggbb" o "#aarrggbb".

3

android:foregroundGravity

Define la gravedad que se aplicará al dibujable en primer plano. La gravedad predeterminada se llena. Los valores posibles son top, bottom, left, right, center, center_vertical, center_horizontal, etc.

4

android:measureAllChildren

Determina si medir a todos los niños o solo a aquellos en el estado VISIBLE o INVISIBLE al medir. El valor predeterminado es falso.

Ejemplo

Este ejemplo lo llevará a través de sencillos pasos para mostrar cómo crear su propia aplicación de Android utilizando el diseño de marcos. Siga los siguientes pasos para modificar la aplicación de Android que creamos en el capítulo Ejemplo de Hello World :

Paso Descripción
1 Utilizará Android Studio IDE para crear una aplicación de Android y nombrarla como demostración en un paquete com.example.demo como se explica en el capítulo Ejemplo de Hello World .
2 Modifique el contenido predeterminado del archivo res / layout / activity_main.xml para incluir algunos widgets en el diseño del marco.
3 No es necesario cambiar string.xml, Android se encarga de las constantes predeterminadas
4 Ejecute la aplicación para iniciar el emulador de Android y verifique el resultado de los cambios realizados en la aplicación.

A continuación se muestra el contenido del archivo de actividad principal modificado src/com.example.demo/MainActivity.java. Este archivo puede incluir cada uno de los métodos fundamentales del ciclo de vida.

package com.example.demo;

import android.os.Bundle;
import android.app.Activity;

public class MainActivity extends Activity {
   @Override
   protected void onCreate(Bundle savedInstanceState) {
      super.onCreate(savedInstanceState);
      setContentView(R.layout.activity_main);
   }
}

A continuación se mostrará el contenido de res/layout/activity_main.xml archivo -

<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
   android:layout_width="fill_parent"
   android:layout_height="fill_parent">
   
   <ImageView 
      android:src="@drawable/ic_launcher"
      android:scaleType="fitCenter"
      android:layout_height="250px"
      android:layout_width="250px"/>
   
   <TextView
      android:text="Frame Demo"
      android:textSize="30px"
      android:textStyle="bold"
      android:layout_height="fill_parent"
      android:layout_width="fill_parent"
      android:gravity="center"/>
</FrameLayout>

A continuación se mostrará el contenido de res/values/strings.xml para definir dos nuevas constantes -

<?xml version="1.0" encoding="utf-8"?>
<resources>
   <string name="app_name">demo</string>
   <string name="action_settings">Settings</string>
</resources>

Intentemos ejecutar nuestro modificado Hello World!aplicación que acabamos de modificar. Supongo que habías creado tuAVDmientras realiza la configuración del entorno. Para ejecutar la aplicación desde Android Studio, abra uno de los archivos de actividad de su proyecto y haga clic en el icono Ejecutar en la barra de herramientas. Android Studio instala la aplicación en su AVD y la inicia y, si todo está bien con su configuración y aplicación, se mostrará la siguiente ventana del emulador: