Tabla de contenido:
Video: ✅ APLICACIONES PARA ARQUITECTOS - iPad pro para arquitectos! 2025
tiene una sola ventana, por lo que no encontrará ventanas de documentos adicionales para mostrar el contenido. Cuando la aplicación se está ejecutando, aunque otras aplicaciones estén en hibernación o se ejecuten en segundo plano, la interfaz de la aplicación se ocupa de toda la pantalla.
La ventana iOS
La ventana individual que ve en el iPad o iPhone es una instancia de la clase UIWindow. Esta ventana se crea en el momento del lanzamiento, ya sea mediante programación o automáticamente por UIKit cuando se usa un guión gráfico. En general, después de crear el objeto Window (es decir, si lo crea en lugar de tenerlo hecho para usted), nunca tendrá que pensarlo de nuevo.
Un usuario no puede cerrar o manipular directamente una ventana de iOS. Es tu aplicación la que administra la ventana mediante programación.
Aunque tu aplicación nunca crea más de una ventana a la vez, iOS puede admitir ventanas adicionales en la parte superior de tu ventana. La barra de estado del sistema es un ejemplo. También puede mostrar alertas en la parte superior de su ventana utilizando las vistas de alertas suministradas.
La vista de iOS
En un mundo de aplicaciones para iOS, los objetos de vista son responsables de la funcionalidad de vista en la arquitectura Model-View-Controller. Una vista es un área rectangular en la pantalla (en la parte superior de una ventana).
En el marco de UIKit, las ventanas son realmente un tipo especial de vista, pero para el propósito de esta discusión, las vistas se ubican en la parte superior de la ventana.
Qué vistas tienen
-
Vistas para mostrar contenido. Esto sucede, por ejemplo, al hacer dibujos y animaciones en pantalla. En esencia, el objeto de vista muestra los datos del objeto modelo.
-
Las vistas manejan eventos táctiles. Las vistas responden cuando el usuario toca un botón, por ejemplo. Manejar eventos táctiles es parte de una cadena de respuesta.
La jerarquía de vista
Mirándola visualmente, la ventana está en la base de esta jerarquía con una vista de contenido encima (una vista transparente que llena el rectángulo de contenido de la ventana). La vista de contenido muestra información y permite al usuario interactuar con la aplicación, utilizando elementos de interfaz de usuario (preferiblemente estándar), como campos de texto, botones, barras de herramientas y tablas.
En tu programa, esa relación es diferente. La vista de contenido se agrega a la vista de ventana como una subvista . Pero la vista de contenido también puede tener sus propias subvistas, y así sucesivamente. Las posibles relaciones incluyen:
- subvistas de la misma.
- superviews de cualquier vista agregada a ellos.
-
Una vista puede tener una (y solo una) supervista y cero o más subvistas.
Parece contradictorio, pero se muestra una subvista encima de su vista principal (es decir, en la parte superior de su supervista). Piense en esta relación como contención: una supervista contiene sus subvistas. Esta figura muestra un ejemplo de una jerarquía de vistas.
Los controles , como botones, campos de texto, etc., son en realidad subclases de vista que se convierten en subvistas. Lo mismo ocurre con otras áreas de visualización que puede especificar. La vista debe gestionar sus subvistas, así como cambiar su tamaño con respecto a sus supervistas. Afortunadamente, gran parte de lo que debe hacer la vista ya está codificado para usted. El marco UIKit proporciona el código que define el comportamiento de la vista.
La jerarquía de vistas también juega un papel clave tanto en el dibujo como en el manejo de eventos.
Crea o modifica una jerarquía de vista cada vez que agrega una vista a otra vista, ya sea programáticamente o con la ayuda del Constructor de interfaz. El marco UIKit maneja automáticamente las relaciones asociadas con la jerarquía de vista.
Los desarrolladores normalmente pasan por alto esta cuestión de la jerarquía visual-versus-programática cuando comienzan, y sin entender estos conceptos, es realmente difícil hacerse una idea de lo que está sucediendo.
