Professional Documents
Culture Documents
Una vista es un objeto cuya clase base es "android.view.View". Es una estructura de datos
cuyas propiedades almacenan el esquema y contenido para una determinada área rectangular
de la pantalla. Un objeto "View" manipula el dimensionamiento y esquema, realiza el pintado,
controla los cambios de foco, desplazamiento de áreas y teclado/gestos para el área de la
pantalla que representa.
La clase "View" sirve de base para los "widgets", que son un conjunto de subclases
implementadas completamente que dibujan elementos interactivos en la pantalla. Los "widgets"
manipulan sus propios dimensionamientos y pintado, de tal forma que tú puedes usarlos para
construir tus propias UI mucho más rápido. La lista de "widgets" disponibles incluye: "Text",
"EditText", "InputMethod", "MovementMethod", "Button", "RadioButton", "Checkbox" y
"ScrollView".
Grupos de vistas
La clase "ViewGroup" sirve de clase base para crear esquemas, los cuales son un conjunto de
subclases implementadas completamente que provee de los tipos más comunes de elementos
de pantalla. Los esquemas nos entregan una forma de construir una estructura para un conjunto
de "View".
Un árbol jerárquico de UI
En la plataforma Android, tú puedes definir una "Activity" con UI usando un árbol de "View" y
nodos de "ViewGroup", tal como lo muestra el diagrama que está a continuación. El árbol puede
ser simple o complejo según tus necesidades, y puede ser construido usando un conjunto
predefinido de "widgets" y elementos de Android o tipos de "View" con características especiales
que tú hayas creado.
Para enlazar el árbol a la pantalla y así efectuar su visualización, nuestra actividad "Activity"
llama a sus método "setContentView()" y pasa la referencia una referencia al objeto del nodo
raíz. Una vez que el sistema Android tiene una referencia al objeto del nodo raíz, éste puede
trabajar directamente con el nodo para invalidar, medirlo y dibujar el árbol. Cuando tú "Activity"
se activa y recibe el foco, el sistema notifica a tu "Activity" y le solicita al nodo raíz que mida y
dibuje el árbol. Entonces, el nodo raíz le solicita a sus nodos hijos que se dibujen así mismo, a
su vez cada nodo de grupo de vistas del árbol es responsable de dibujar sus nodos hijos
directos.
Cada "ViewGroup" usa una clase anidada que hereda de "ViewGroup.LayoutParams". Esta
subclase contiene tipos de propiedades que definen el tamaño y posición de un hijo en
propiedades que son apropiadas para esa clase de "ViewGroup".
Cada subclase de "LayoutParams" tiene su propia sintaxis para asignar sus valores. Cada
elemento hijo debe definir un "LayoutParams" que sea apropiado para su padre, aunque éste
último podría definir un "LayoutParams" diferente para sus hijos.
Todos los incluyen ancho y alto. Muchos incluso tienen márgenes y contorno. Tú puedes indicar
un ancho y alto determinados, pero probablemente no lo harás de manera frecuente. Lo más
probable es que dejarás que tu vista se auto dimensione al tamaño de sus contenidos o tan
grande como el objeto que lo contiene lo permita.
3.- Identificar la jerarquía de clases en relación al tema específico de cada estudiante. Explique
la jerarquía de clases y su relación con el código de su aplicación
Para la creación de la Interfaz de Usuario con Pestañas, vamos a crear y utilizar los siguientes
componentes Android:
● CoordinatorLayout
● AbbBar
● ToolBar
● TabLayout
● ViewPager
● Fragments
● FragmentsPagerAdapter
Entonces lo siguiente que haremos será implementar la Appbar. Recordaros que la Appbar es
básicamente un contenedor vertical (un LinearLayout) donde implementaremos a su vez dentro
de ella, la barra de herramientas (Toolbar) y, debajo de esta, las pestañas o Tabs mediante el
componente TabLayout.
Debajo del bloque de la Appbar, lo que haremos será poner un ViewPager. Este componente
será el encargado de gestionar el cambio de secciones cuando hagamos el deslizamiento
horizontal (Swipe) en la pantalla.
El estándar que se usó en el desarrollo de está aplicación fueron usados basada en Native RMA
(Native Resident Mobile Application) O Aplicación Móvil Residente Nativa. Se trata de las
aplicaciones que se instalan en el dispositivo que se se han desarrollado de forma específica
para una determinada plataforma conforme al SDK (Software Development Kit) correspondiente.
Desde un punto de vista de los costes de desarrollo está opción es un desarrollo completo y
recursos específicos por plataforma destino donde se publicara la aplicación.
Referencias
Anon, (2017). [online] Available at: http://luis.izqui.org/resources/ProgOrientadaObjetos.pdf
[Accessed 18 Jul. 2017].