Escolar Documentos
Profissional Documentos
Cultura Documentos
-----------------------------------------------------------------------------------------------------------------------------------
Para entenderlo mejor, haremos un pequeño diseño con RelativeLayout, primero nos iremos a
nuestro diseño base creado por la plantilla de Empty Activity, para poder acceder a él, la ruta es la
siguiente: app -> res -> layout -> activity_main.xml
Una vez ahí damos doble clic para apreciar el diseño por defecto que se nos creo al usar la
plantilla.
Al abrir nuestro diseño, tal vez no se vea en pantalla completa, opacada por la consola de
compilación, si este fuera el caso, solo le damos clic en el botón de minimizar de la consola.
Y con esto ya tendremos el diseño en pantalla completa, se tendría que ver de esta forma.
Si este no fuera el caso y viéramos otra cosa, nos fijaremos en la parte de abajo
Vemos que tenemos dos pestañas, hay dos formas de crear diseño.
Componentes
Esta será nuestra herramienta para buscar los componentes que necesitamos para nuestro
proyecto, por ejemplo, si queremos un botón, lo buscamos, lo arrastramos hacia nuestro diseño y
se añadirá automáticamente.
Este será nuestro árbol de componentes como su nombre se indica, en vez de arrastrar a lo tonto
a la interfaz gráfica, usaremos esto para tener todo mas ordenado.
Si nos fijamos bien, el padre de toda esta pantalla es ConstraintLayout, cambiaremos esto a como
lo pide el documento, el cual es usar RelativeLayout, para cambiarlo es simple.
Daremos clic derecho en ConstraintLayout, después nos iremos a la opción de Convert view…
Pantalla de trabajo:
En este módulo, realizaremos la siguiente pantalla con RelativeLayout, asi que manos a la obra.
Primero, hay que aprender que cada componente tiene propiedades, no todos los componentes
tienen las mismas propiedades, no olvidar eso.
Segundo, el componente donde podemos escribir títulos y texto en Android se llama TextView.
TextView tiene la propiedad Text, la cual usaremos para cambiar el contenido del TextView.
Según la pantalla de trabajo, pondremos “Numero de Teléfono: ”, y por ultimo enter, para poder
visualizar el nuevo cambio.
ADVERTENCIA
Si se dieron cuenta, hay 2 text, esto puede causar confusión al momento de diseñar. ¿Por qué dos
text? ¿Por qué al cambiar en cualquiera de los dos funciona?
Si nos fijamos en la llave inglesa el cual contiene el segundo text, nos aparece la propiedad
tools:text:, para no marearlos mucho, tools se usa para solo ver como se vería nuestra aplicación
si le añadimos esta modificación, es decir, si agregaste “Numero de Telefono: ” en el segundo text,
al momento de compilar, aparecerá en blanco, ya que tools solo sirve para poder ver como se
vería nuestra pantalla antes de ejecutar la aplicación.
Asi que antes de aplicar cualquier cambio, vean si lo están aplicando a tools.
Si nos fijamos en el diseño final, este tiene un fondo colorido, asi que pensemos un momento y
preguntémonos, en donde agregaríamos el color de fondo, en el TextView, o en el RelativeLayout.
Ambos componentes tienen la propiedad de poder agregarle un color de fondo, pero para este
caso el color de fondo le agregaremos a RelativeLayout. ¿Por qué?
Por que como sabemos, RelativeLayout es el contenedor de componentes, asi si agregáramos mas
componentes, ya no tendríamos que cambiar el fondo de los nuevos.
Pero podemos ver que hay un Spinner llamado All Attributes el cual nos dará todas las
propiedades del componente, ahora si damos click ahí podremos apreciar la propiedad que
estamos buscando, el cual es background.
El cual al darle click y escribiendo una parte de la palabra del atributo que estamos buscando,
automaticamente saldra el atributo, para este proyecto aprenderemos a usar el filtro, ya que es
mas eficiente y nos ahorra mucho tiempo a la hora de estar diseñando pantallas.
Ahora si dentro de la propiedad background, tendremos que escribir el color de fondo que tendrá
nuestro RelativeLayout en colores Hexadecimal, podemos usar esta pagina https://html-color-
codes.info/codigos-de-colores-hexadecimales/ para poder encontrar el color que buscamos,
copiar el código hexadecimal y pegarlo en la caja de texto (RECUERDEN QUE PARA VER LOS
CAMBIOS DEBEN DAR ENTER EN LA CAJA DE TEXTO), pero ahora hay algo llamado material design,
el cual nos facilita mucho a la hora de diseñar pantallas, en este caso, también para los colores.
Para acceder a los colores de material desing, daremos click en la parte encerrada de color rojo.
Para esta pantalla usaremos el color pastel celeste, si nos fijamos en el Spinner de Material #,
podremos subirle o bajarle el numero para cambiar la tonalidad del color, en este caso nos iremos
a Material 500.
Y elegiremos el color celeste, ustedes pueden elegir otro color a su gusto, lo importante es que
deben saber que existe esta herramienta, una de las mas fabulosas que ha creado Android Studio.
Y al elegir el color celeste pastel tendremos esta pantalla, si se ve igual que la imagen es que estas
siguiendo los pasos al pie de la letra.
Recuerden, una cosa es el fondo del componente y otra cosa es el color del componente, en este
caso para los TextView existe algo llamado TextColor, es la propiedad que usaremos para cambiar
el color del texto. (RECUERDEN PRIMERO IR A LAS PROPIEDADES DEL TEXTVIEW)
Y como vemos no aparece vacío, es que los TextView por defecto ya viene con un color de texto.
Y al aplicar el cambio vemos que ahora el color del texto combina perfecto con el fondo.
Seguro ya sabrás que una caja de texto es un componente donde el usuario ingresa caracteres
mediante el teclado, en Android se llama EditText
Todos los componentes que esta mostrando el filtro, son cajas de texto, pero hay varios por que
puede haber cajas de texto donde solo se ingresa números, fechas correos, contraseñas, etc.
Asi nos evitamos validar en la lógica del proyecto ya que el componente ya viene con su propia
lógica.
Los requerimientos piden que ingresen un numero de teléfono, asi que eso haremos.
Nos fijamos que la línea azul este debajo de TextView y las líneas puntiagudas en forma vertical
indiquen correctamente al contenedor RelativeLayout.
Al ser RelativeLayout el padre de estos dos componentes, les agrega propiedades especiales a
cada uno de estos, el cual nos servirá para decirle que nuestro EditText este debajo del TextView.
Esta imagen explica las propiedades que usaremos para que nuestro EditText este debajo del
TextView, vemos que tenemos en el centro un botón el cual su identificador es “main”, el botón
esta por defecto en el centro.
ADVERTENCIA
Asi que, si nos fijamos detalladamente en la imagen, para que esto funcione el componente debe
tener un identificador, para agregar un identificador a un componente se le modifica mediante la
propiedad id
(tv)+(PrimeraLetraMayuscula)+(Minúscula)
tvTitulo
(edt)+(PrimeraLetraMayuscula)+(Minúscula)
Como nuestro EditText es una caja de texto para ingresar un numero, le pondremos:
edtNumero
Ahora para que le agregamos ids a nuestros componentes, una de las razones es para
identificarlos más fácil en nuestro árbol de componentes, la otra es que nos servirá para poner
nuestra caja de texto debajo del título.
A = tvTitulo
B = edtNumero
Los Buttons también tienen identificadores, la nomenclatura para los botones es:
(btn)+(PrimeraLetraMayuscula)+(Minúscula)
Para este primer botón el cual lo que hace es cancelar, usaremos el siguiente identificador:
btnCancelar
Para cambiarle el texto de los botones usaremos la propiedad text, Le pondremos “Cancelar”.
Ahora como ponemos el botón a la derecha de cancelar, RelativeLayout nos permite usar sus
propiedades al mismo tiempo, lo que haremos es que este debajo de edtNumero y a la vez a la
derecha de btnCancelar.
Paso 6: Hint
Si nos damos cuenta, hay un texto en el EditText, podemos agregarle fácilmente con text, pero
esto traería varios errores, que al compilar la aplicación se mostrara ese texto, pero yo acabo de
decir que ese EditText solo puede ingresar números, a este error los desarrolladores crearon
llamado algo Hint, para que lo entiendas mejor lo explicare con un ejemplo de Whatsapp.
Ese texto de “Escribe un mensaje” Seria el hint, por que, por que, al escribir una letra, todo lo de
adentro se borra y se remplaza por la letra que acabo de escribir.
Al editarlo podremos ver que ya se nos puso el texto que queríamos, pero sin aplicar la propiedad
text.
Y este seria nuestro diseño final, solo vimos lo básico, con el paso de los módulos, veremos cosas
avanzadas que poco a poco nos irán complementando, gracias por haber leído hasta aquí.
Ejercicios
Ejercicio 1: Diseño 1
Requerimiento: Hacer la Siguiente Pantalla (En nombre, remplazar el nombre por su nombre,
tomar captura y enviarle al encargado del curso)
Ejercicio 2: Diseño 2
Requerimiento: Hacer la Siguiente Pantalla (En nombre, remplazar el nombre por su nombre,
tomar captura y enviarle al encargado del curso)
Ejercicio 3: Escalera
Requerimiento: Hacer la Siguiente Pantalla (En nombre, remplazar el nombre por su nombre,
tomar captura y enviarle al encargado del curso)