Vous êtes sur la page 1sur 39

UNIVERSIDAD NACIONAL DE TRUJILLO CURSO: TEMAS AVANZADOS 2

Android Studio Desde 0 - Capitulo 4 – Evento en los Botones

Creación de un nuevo Proyecto:


Plantilla: Empty Activity

Para este proyecto usaremos la siguiente configuración

Name: Clase 4

Package name: (nombre).(segundonombre).com.clasecuatro

En mi caso seria “kevin.piazzoli.com.clasecuatro”

Language: Java

Minimum API level: API 16 (Android 4.1 Jelly Bean)

DOCENTE: Mg. Marcellino Torres Villanueva Pag. 1


UNIVERSIDAD NACIONAL DE TRUJILLO CURSO: TEMAS AVANZADOS 2

Abriremos el diseño por defecto que apare en la siguiente ruta:


App -> res -> layout -> activity_main.xml y abrimos el diseño

Ahora en el diseño, cambiaremos a RelativeLayout (VER EL CAPITULO 2) Y eliminaremos el


TextView que viene por defecto, para eliminar un componente se hace clic derecho sobre el
componente y después Delete

Al final nuestro árbol de componentes debería quedar asi:

DOCENTE: Mg. Marcellino Torres Villanueva Pag. 2


UNIVERSIDAD NACIONAL DE TRUJILLO CURSO: TEMAS AVANZADOS 2

Clase del dia de hoy

Lo que haremos el dia de hoy es algo simple.

Agregar un botón, y al darle clic que nos diga “Bienvenido, hoy es” + Fecha

El botón tendrá el siguiente id:


btnVerFecha

y el texto del botón será:

“Ver Fecha”

Con lo aprendido del capítulo 2, no será tan complicado agregar un botón con las siguientes
características.

El resultado final será este.

DOCENTE: Mg. Marcellino Torres Villanueva Pag. 3


UNIVERSIDAD NACIONAL DE TRUJILLO CURSO: TEMAS AVANZADOS 2

Ahora pondremos el fondo de color azul, y ubicaremos el botón al centro


Ya sabemos poner un color de fondo, pero ahora, como manipulamos la posición de los objectos
con RelativeLayout, es fácil.

Esta imagen explica las propiedades que contienen los hijos de RelativeLayout.
En este caso, btnVerFecha es hijo de RelativeLayout ya que está dentro de él, asi que al ser hijo ya
tiene todas estas propiedades.
Como el documento pide que el btnVerFecha este en el centro, usaremos la propiedad
layout_centerInParent.
Si nos fijamos, al buscar esta propiedad en btnVerFecha, aparece con el símbolo de “-“, eso
significa que es falso, o sea deshabilitado.

DOCENTE: Mg. Marcellino Torres Villanueva Pag. 4


UNIVERSIDAD NACIONAL DE TRUJILLO CURSO: TEMAS AVANZADOS 2

Si damos clic en el símbolo de “-“ se pondrá en un check

Y esto es lo que sucederá, como vemos obtuvimos lo que deseamos, que nuestro botón este en el
medio, puedes jugar con las otras propiedades para poder ver resultados diferentes, recuerda que
también se puede combinar, es decir si quisiéramos este resultado:

Que nuestro botón este en la parte inferior, pero a la vez que este centrado, combinaríamos
layout_centerHorizontal con layout_alignParentBottom

DOCENTE: Mg. Marcellino Torres Villanueva Pag. 5


UNIVERSIDAD NACIONAL DE TRUJILLO CURSO: TEMAS AVANZADOS 2

Y el resultado sería este:

Pero por ahora lo que pide el diseño es que este en el centro:

Y este sería el resultado final.

DOCENTE: Mg. Marcellino Torres Villanueva Pag. 6


UNIVERSIDAD NACIONAL DE TRUJILLO CURSO: TEMAS AVANZADOS 2

Programando el Botón
Ahora que ya diseñamos nuestra interfaz, pasaremos a hacer la segunda parte del requerimiento,
el cual es que al dar clic aparezca un “Bienvenido, hoy es” + Fecha.
Lo primero es saber en donde se escribe la lógica de programación y la respuesta es que todo esto
se hace mediante código Java, al usar la plantilla de Empty Activity, nos viene con una clase Java
conectada a la interfaz que viene por defecto, esta se llama MainActivity.java.
La ruta es la siguiente:
App -> java -> (Nombre del paquete de su proyecto)

Accederemos a este archivo para poder manipular la lógica de la interfaz.

Al ingresar solo nos encontraremos con este código.


package: La ruta de donde se encuentra el archivo siguiendo desde la clase padre que es Java.

DOCENTE: Mg. Marcellino Torres Villanueva Pag. 7


UNIVERSIDAD NACIONAL DE TRUJILLO CURSO: TEMAS AVANZADOS 2

Dentro de import están las librerías que usa Android por defecto, si damos clic en import,
podremos ver las librerías que tenemos actualmente.

Después teneos a la clase MainActivity la cual extiende de AppCompatActivity,


Una clase al extender de AppCompactActivity, se convierte en una Actividad.
Actividad: Una Activity es un componente de la aplicación que contiene una pantalla con la que
los usuarios pueden interactuar para realizar una acción, como marcar un número telefónico,
tomar una foto, enviar un correo electrónico o ver un mapa.
Ahora te preguntaras, que es ese método que viene por defecto llamado onCreate, para eso
tendremos que ver el ciclo de la vida de una activity.

DOCENTE: Mg. Marcellino Torres Villanueva Pag. 8


UNIVERSIDAD NACIONAL DE TRUJILLO CURSO: TEMAS AVANZADOS 2

Ciclo de la vida de una actividad

Creación: Una actividad se ha creado cuando su estructura se encuentra en memoria, pero esta no
es visible aun. Cuando el usuario presiona sobre el icono de la aplicación en su dispositivo, el
método onCreate() es ejecutado inmediatamente para cargar el layout de la actividad principal en
memoria.
Ejecución-Reanudación: Después de haber sido cargada la actividad se ejecutan en secuencia a el
método onStart() y onResume(). Aunque onStart() hace visible la actividad, es onResume() quien le
transfiere el foco para que interactúe con el usuario.
Pausa: Una actividad está en pausa cuando se encuentra en la pantalla parcialmente visible. Un
ejemplo sería cuando se abren diálogos que toman el foco superponiéndose a la actividad. El
método llamado para la transición hacia la pausa es onPause().
Detención: Una actividad está detenida cuando no es visible en la pantalla, pero aun se encuentra
en memoria y en cualquier momento puede ser reanudada. Cuando una aplicación es enviada a
segundo plano se ejecuta el método onStop(). Al reanudar la actividad, se pasa por el método
onRestart() hasta llegar a el estado de ejecución y luego al de reanudación.
Destrucción: Cuando la actividad ya no existe en memoria se encuentra en estado de destrucción.
Antes de pasar a destruir la aplicación se ejecuta el método onDestroy(). Es común que la mayoría
de actividades no implementen este método, a menos que deban destruir procesos (como
servicios) en segundo plano.
Fuente: http://www.hermosaprogramacion.com/2014/08/android-app-componentes/

DOCENTE: Mg. Marcellino Torres Villanueva Pag. 9


UNIVERSIDAD NACIONAL DE TRUJILLO CURSO: TEMAS AVANZADOS 2

Resumen:
Al final podemos entender que el método OnCreate() se ejecuta al dar clic en el icono launcher de
nuestra aplicación.
Después habrá un modulo con varios ejemplos sobre el ciclo de la vida en Android, por ahora lo
importante es saber cómo dar una acción al botón cada vez que le hagamos clic.

Por último, quedaría saber para qué sirve este método llamado setContentView, este método
existe gracias a AppCompactActivity, toda actividad viene por defecto con una vista (View) vacía,
si ejecutáramos la app sin el setContentView, aparecería una pantalla totalmente en blanco, pero
gracias a este método, podemos definirle una vista creada desde la carpeta layout de recursos, es
decir que, si creáramos otro diseño, solo tendríamos que cambiar la ruta por el nuevo diseño.
“R.layout.activity” -> Es la ruta donde se encuentra nuestro diseño.

R -> Recursos (Carpeta res)


layout -> carpeta layout
activity_main -> activity_main.xml

Es por eso que la línea de código R.layout.activity_main hace referencia a nuestro diseño XML.

DOCENTE: Mg. Marcellino Torres Villanueva Pag. 10


UNIVERSIDAD NACIONAL DE TRUJILLO CURSO: TEMAS AVANZADOS 2

Conectar la parte grafica con la parte lógica


Bueno ahora que entendimos todo el código que viene por defecto, pasaremos a explicar la
estructura con la cual trabajaremos.

Dentro de cada clase, en las primeras líneas de código declararemos las variables que utilizaremos,
debajo de ellas pondremos los métodos, esto es para que haya un orden en nuestro código.

Asi que pondremos comentarios, para saber que significa cada parte de nuestro código.

Ahora sí, para conectar el botón que tenemos en el diseño XML con la clase Java estos son los
pasos.

DOCENTE: Mg. Marcellino Torres Villanueva Pag. 11


UNIVERSIDAD NACIONAL DE TRUJILLO CURSO: TEMAS AVANZADOS 2

Paso 1: Declarar el tipo de dato Button.

Como vemos mientras vayamos escribiendo el Android Studio nos ira ayudando para poder digitar
el código mas rápido, aparte de eso, Button es una librería de Android, si evitamos la ayuda de
Android Studio, sucederá esto.

El tipo de dato no existirá ya que no se importa la librería, en el caso en que sucediera esto,
Android Studio nos vuelve a ayudar para importar la librería.

Cuando salga ese diálogo, presionamos Alt + Enter, y automáticamente se nos importara la
librería.

DOCENTE: Mg. Marcellino Torres Villanueva Pag. 12


UNIVERSIDAD NACIONAL DE TRUJILLO CURSO: TEMAS AVANZADOS 2

Se recomienda que todas las variables estén en private, mas que nada para que todo este
encapsulado y protegido dentro de la clase de MainActivity.

Paso 2: Conectar la variable con el Button XML.


Ahora si debemos conectar la variable btnVerFecha con el botón del diseño, esto se hace después
de inflar la vista.
Inflar la vista -> es cuando agregas una vista dentro de una vista padre, haciendo asi que esta se
convierta en una vista hijo.
La activity por defecto tiene una vista, que esta en blanco, esta vista la llamaremos vista padre.

Al ejecutar este método, lo que estamos haciendo es agregar como hijo del activity al diseño
activity_main.xml.
Después de ejecutar este método, mediante el método findViewById() podremos obtener todos
los hijos de activity_main.xml
En conclusión:

Activity contiene a activity_main.xml y

activity_main.xml contiene al botón que creamos hace un momento.

Y mediante el método findViewById() podremos obtener los componentes del diseño

Para manipular las propiedades del Botón en código Java conectaremos la variable btnVerFecha
con el botón del diseño, y como dijimos esto se hace después de inflar la vista en la actividad.

Pregunta: ¿Puede la variable Button tener el mismo nombre que el identificador?


Respuesta: Si, sin problema, lo que no puede existir es dos identificadores con el mismo nombre
en un mismo diseño XML.
El parámetro que pide findViewById() es un id, el mismo id que pusimos en el diseño xml.

Cada vez que agregamos un id a un componente de diseño, automáticamente este se guarda en


R.id, es por eso que podemos acceder al id btnVerFecha

DOCENTE: Mg. Marcellino Torres Villanueva Pag. 13


UNIVERSIDAD NACIONAL DE TRUJILLO CURSO: TEMAS AVANZADOS 2

El parámetro que devuelve findViewById() es el mismo tipo de dato del diseño, si se dan cuenta
btnVerFecha es un Button, el mismo tipo de dato que declaramos en Java.

El código final seria este

Paso 3: Añadir el evento de clic al Botón


Ahora si que ya tenemos el botón en una variable, podremos acceder a todos sus métodos, y si,
también podemos cambiarle el texto, el color, la posición y todo lo demás, pero lo que veremos
ahora es solo darle un evento, que al presionarlo nos salga un mensaje, algo asi como “Hola
Mundo”.
El método por el cual realizaremos esto se llama setOnClickListener()

Podemos ver que este método nos pide algo, pero no sabemos que es.
Si ponemos el cursor encima

Y presionamos control + p

Podemos ver que nos pide un OnClickListener, este es una interface de la cual implementa un
método onClick, dentro de ese método es donde pondremos la lógica que deseamos que realice al
momento de hacer clic en el botón.

DOCENTE: Mg. Marcellino Torres Villanueva Pag. 14


UNIVERSIDAD NACIONAL DE TRUJILLO CURSO: TEMAS AVANZADOS 2

Para implementar la interface haremos lo siguiente, escribiremos la palabra new.

Después daremos un espacio

Y presionaremos lo siguiente Control (Ctrl) + Espacio

Si es que no nos apareciera, borramos el espacio, agregamos de nuevo el espacio y presionamos


de nuevo Control (Ctrl) + Espacio hasta que nos aparezca el autocompletado, si vimos hace rato lo
que nos pide una interface OnClickListener, entonces elegiremos View.OnClickListener{…}
Podemos autocompletarlo presionando enter o dando doble clic.

El resultado final sería asi:

Ahora si dentro del método onClick es donde escribiremos sobre lo que tiene que hacer el botón
cada vez que le hagamos un clic.

DOCENTE: Mg. Marcellino Torres Villanueva Pag. 15


UNIVERSIDAD NACIONAL DE TRUJILLO CURSO: TEMAS AVANZADOS 2

Paso 4: Imprimir un mensaje en pantalla


Para poder imprimir un mensaje en pantalla, se usará un Toast.
Un Toast es una vista que contiene un pequeño mensaje rápido para el usuario. La clase de Toast
te ayuda a crearlos y mostrarlos en la interfaz.
El código es el siguiente:

Llamamos a la clase Toast, ejecutamos su método makeText y después mostramos el mensaje en


pantalla llamando al método show.
Dentro del método makeText necesitaremos siempre 3 cosas.

Un Contexto (Context)

El mensaje a imprimir (String)

Y el tiempo de duración del mensaje

Context: Context es una “interfaz” a la información global sobre un entorno de aplicación. En la


práctica, Context es en realidad una clase abstracta, cuya implementación es proporcionada por el
sistema Android.
Permite el acceso a clases y recursos específicos de la aplicación, así como llamadas de nivel
superior para operaciones a nivel de la aplicación, como actividades de lanzamiento, difusión y
recepción de intentos, etc.
En la siguiente imagen, puede ver una jerarquía de clases, donde Context está la clase raíz de esta
jerarquía. En particular, cabe destacar que Activity es descendiente de Context.

Entonces, una Activity proviene de la clase Context, y AppCompactActivity hereda los atributos de
Activity, entonces si el método makeToast pide un Context, por lógica mandaremos a
MainActivity.this.

DOCENTE: Mg. Marcellino Torres Villanueva Pag. 16


UNIVERSIDAD NACIONAL DE TRUJILLO CURSO: TEMAS AVANZADOS 2

El segundo parámetro es el texto que queremos que imprima, para este ejemplo imprimiremos un
“Hola Mundo”.
Y por último nos pide la duración del mensaje, para esto solo existe dos parámetros.

Toast.LENGTH_LONG: Mensaje de larga duración

Toast.LENGTH_SHORT: Mensaje de corta duración

Al final nuestro Toast quedaría asi

Y si ejecutamos la aplicación tendremos el siguiente resultado:

DOCENTE: Mg. Marcellino Torres Villanueva Pag. 17


UNIVERSIDAD NACIONAL DE TRUJILLO CURSO: TEMAS AVANZADOS 2

Y si damos clic en el Button, veremos el siguiente resultado:

DOCENTE: Mg. Marcellino Torres Villanueva Pag. 18


UNIVERSIDAD NACIONAL DE TRUJILLO CURSO: TEMAS AVANZADOS 2

Paso 5: Imprimir “Bienvenido, hoy es” + Fecha.


Crearemos un String en donde concatenemos “Bienvenido, hoy es” + la fecha actual del celular.

Importaremos la librería de java.util

Por último, mandaremos la variable a nuestro Toast.

Teniendo esto como resultado:

Al presionar el botón, el mensaje será el siguiente, podemos mejorar esto agregando un formato.

Esto ya no forma parte del curso de Android, pero aquí tienen el código por si lo necesitan.

Ahora se ve mucho mejor, logramos el objetivo.

DOCENTE: Mg. Marcellino Torres Villanueva Pag. 19


UNIVERSIDAD NACIONAL DE TRUJILLO CURSO: TEMAS AVANZADOS 2

Nuevo Objetivo:
Agregar un EditText, obtener el contenido de la caja de texto y pasarle a un TextView al presionar
un Button.
Paso 1: Crear un nuevo diseño
Para eso nos dirigimos a App -> res -> layout

Click derecho en layout, después clic en New -> Layout Resource file

DOCENTE: Mg. Marcellino Torres Villanueva Pag. 20


UNIVERSIDAD NACIONAL DE TRUJILLO CURSO: TEMAS AVANZADOS 2

Nos aparecerá a la siguiente ventana, en File name pondremos el nombre de nuestro nuevo
diseño, en este caso le pondremos
activity_pantalla_2

Advertencia
Recuerda que el nombre de los Layouts no puede ir en mayúsculas, ni llevar puntos y guiones, solo
guiones bajos, letras minúsculas y números.
En Root element podremos cambiar el diseño que bien por defecto de ConstraintLayout a
RelativeLayout.

Asi es como quedaría al final, Damos clic en OK para finalizar la creación de nuestro diseño.

Y tendríamos que tener 2 layout en nuestra carpeta de layout

DOCENTE: Mg. Marcellino Torres Villanueva Pag. 21


UNIVERSIDAD NACIONAL DE TRUJILLO CURSO: TEMAS AVANZADOS 2

Paso 2: Crear el diseño:

Características del diseño:

EditText:

id: edtTexto
text:
hint: Escribe algo…
textColorText: #FFFFFF

Button:

id: btnPasarTexto
text: Pasar Texto

TextView:

id: tvResultado
text: Resultado:
textColor: #FFFFFF

RelativeLayout:

background: color pastel

Todo centrado

DOCENTE: Mg. Marcellino Torres Villanueva Pag. 22


UNIVERSIDAD NACIONAL DE TRUJILLO CURSO: TEMAS AVANZADOS 2

Diseño final:

DOCENTE: Mg. Marcellino Torres Villanueva Pag. 23


UNIVERSIDAD NACIONAL DE TRUJILLO CURSO: TEMAS AVANZADOS 2

Paso 3: Crear una nueva clase de Java


Para eso nos dirigimos a App -> java -> (nombre del paquete de proyecto)
Hacemos clic derecho en la carpeta
Después clic en New -> Java Class

Nos aparecerá la siguiente ventana


Solo modificaremos Name: el cual pondremos el nombre de nuestra nueva clase, que será
Pantalla2Activity

Al final quedaría así

Y damos clic en OK para finalizar la creación de la clase

DOCENTE: Mg. Marcellino Torres Villanueva Pag. 24


UNIVERSIDAD NACIONAL DE TRUJILLO CURSO: TEMAS AVANZADOS 2

Al crear nuestra clase, nos aparecerá así, para darle la forma de una Activity, primero debemos
extender de AppCompatActivity

Igualmente, si nos saliera error, aplicaremos alt + enter para importar la librería

Y este sería el resultado

Después de darle la forma de una Actividad, tenemos que implementar el método onCreate
Dentro de la clase presionaremos control (Ctrl) + O

DOCENTE: Mg. Marcellino Torres Villanueva Pag. 25


UNIVERSIDAD NACIONAL DE TRUJILLO CURSO: TEMAS AVANZADOS 2

Nos aparecerá la siguiente pantalla, buscaremos el método onCreate y daremos clic en OK para
implementarlo.

DOCENTE: Mg. Marcellino Torres Villanueva Pag. 26


UNIVERSIDAD NACIONAL DE TRUJILLO CURSO: TEMAS AVANZADOS 2

Podremos usar el filtro que viene en esta ventana, simplemente dentro de la ventana escribiremos
onCreate, y automáticamente el programa nos ayudará a buscarlo, ya que hay muchos métodos y
aparte que esto agiliza el proceso de programación, por último, damos en ok y se nos deberá
implementar en nuestra clase.

Recuerden implementar el método que es de AppCompatActivity, ya que hay varios onCreate y si


ingresan otro pueden causar un error en su código

DOCENTE: Mg. Marcellino Torres Villanueva Pag. 27


UNIVERSIDAD NACIONAL DE TRUJILLO CURSO: TEMAS AVANZADOS 2

Al final tendremos este resultado:

Por último, le diremos que la vista que tendrá que cargar al iniciar esta actividad será
activity_pantalla_2.

Paso 4: Declarar las variables

Ahora si pasaremos a crear las variables, en este caso tendremos un EditTet, un Button y un
TextView.

Paso 5: Conectar las variables con los componentes de diseño

Paso 6: Aplicar la lógica

Ahora si viene la parte mas difícil, lo que nos pide el objetivo, para eso debemos ordenar todo el
paso en un diagrama de flujo, o simplemente escribir cada paso en orden.

1. Dar clic en el botón


2. Obtener el contenido del EditText
3. Pasar el contenido al TextView

1.Ya sabemos como dar evento a un botón, así que simplemente lo impleméntanos

DOCENTE: Mg. Marcellino Torres Villanueva Pag. 28


UNIVERSIDAD NACIONAL DE TRUJILLO CURSO: TEMAS AVANZADOS 2

2. Obtener el contenido del EditText

Para obtener el contenido del contenido del EditText en un String, se usara el siguiente método:

.getText().toString();

Y al final el código seria así

3.Para pasar el contenido del EditText que esta en la variable texto, usaremos el método.
setText(String) del objeto TextView

Y dentro de ese método pasaremos la variable texto

El código final sería así:

DOCENTE: Mg. Marcellino Torres Villanueva Pag. 29


UNIVERSIDAD NACIONAL DE TRUJILLO CURSO: TEMAS AVANZADOS 2

Paso 7: Definir la nueva pantalla como activity launcher

Ahora si ya creamos nuestra nueva pantalla, pero ahora como le decimos a Android que, al abrir,
ejecute esta nueva pantalla, para eso usaremos el manifest

La ruta es la siguiente:

App -> manifest -> AndroidManifest.xml

Abrimos el archivo y nos encontraremos con esto:

Si nos fijamos solo hay una parte es la cual nos interesa

Si vemos aquí es donde se declara que .MainActivity es la actividad que se ejecuta al iniciar la app.

DOCENTE: Mg. Marcellino Torres Villanueva Pag. 30


UNIVERSIDAD NACIONAL DE TRUJILLO CURSO: TEMAS AVANZADOS 2

Cambiaremos eso por nuestra nueva clase Java, la cual es: Pantalla2Activity

El resultado final sería así:

Ahora si ejecutas la app y veremos que tenemos.

DOCENTE: Mg. Marcellino Torres Villanueva Pag. 31


UNIVERSIDAD NACIONAL DE TRUJILLO CURSO: TEMAS AVANZADOS 2

Ultimo objetivo de este capítulo:

Crear un menú con dos botones, el cual, al hacer clic en el primer botón, me lleve a la primera
pantalla (main_activity) y al hacer clic en el segundo botón me lleve a la segunda pantalla que
acabamos de crear.

Paso 1:

Crear la nueva pantalla activity_menu con dos botones, Diseño libre, con sus respectivos
identificadores.

Al final deberían tener algo así:

DOCENTE: Mg. Marcellino Torres Villanueva Pag. 32


UNIVERSIDAD NACIONAL DE TRUJILLO CURSO: TEMAS AVANZADOS 2

Paso 2: Crear la clase Java con su método onCreate y setearle el diseño activity_menu.xml

La clase java se llamará MenuActivity

Al final tendremos algo como esto.

Paso 3: Crear las variables y conectarlas con los componentes

Al final este será el código:

DOCENTE: Mg. Marcellino Torres Villanueva Pag. 33


UNIVERSIDAD NACIONAL DE TRUJILLO CURSO: TEMAS AVANZADOS 2

Paso 4: Agregar los eventos de clic a cada botón

Siguiendo los pasos anteriores al final tendremos algo como esto:

Paso 5: Iniciar las nuevas pantallas al dar clic en cada botón

Para iniciar una nueva pantalla, usaremos el método startActivity()

El método startActivity pide un parámetro, es un tipo de dato llamado Intent

Intent es una variable muy grande por explorar, en este caso no entraremos mucho a detalle, solo
lo usaremos para pasar a otra actividad, y por lo cual nos piden dos parámetros:

1. Desde donde se está llamando


2. Hacia donde queremos ir

Así que primero crearemos la variable Intent dentro del método onClick del btnPantalla1

Recuerden si les sale error solo implementen la librería con alt+enter

Ahora sí, dentro de los paréntesis pondremos los siguientes parámetros, desde donde se esta
llamando, llamaremos al Contexto de nuestra clase la cual es MenuActivity.this y después
tendremos que poner a que actividad queremos ir apuntándola como una clase (class) en este
caso el primer botón nos mandara a la primera pantalla que es el MainActivity.class

El código final sería así

Por último, ejecutamos el método startActivity y mandamos como parámetro la variable intent

Y este sería el código final.

DOCENTE: Mg. Marcellino Torres Villanueva Pag. 34


UNIVERSIDAD NACIONAL DE TRUJILLO CURSO: TEMAS AVANZADOS 2

Hacemos lo mismo con el evento del segundo botón

El código final sería así:

DOCENTE: Mg. Marcellino Torres Villanueva Pag. 35


UNIVERSIDAD NACIONAL DE TRUJILLO CURSO: TEMAS AVANZADOS 2

Paso 6: Modificar el manifest

Ahora nos iremos al manifest, y haremos las siguientes configuraciones

1. Declararemos a la clase MenuActivity como la clase que se iniciara primera


2. Agregaremos las dos activitys restantes como activitys secundarias, es decir, que no se
ejecutarán al iniciar pero que se abrirán en algún momento.

1. Configuramos la Activity Launcher

2.Agregamos las otras activitys como actividades secundarias

Para eso nos fijamos en la estructura del diseño xml

Si nos fijamos bien, activity es una etiqueta en la cual abre y cierra, nos dirigimos a donde cierra la
etiqueta, y hacemos un pequeño enter para escribir

DOCENTE: Mg. Marcellino Torres Villanueva Pag. 36


UNIVERSIDAD NACIONAL DE TRUJILLO CURSO: TEMAS AVANZADOS 2

Ahora si dentro de ese pequeño espacio, escribiremos <a y el programa nos deberá autocompletar
como <activity

Damos enter y tendremos lo siguiente:

De las opciones elegiremos .MainActivity y damos enter

Y por último cerraremos con el símbolo de “/>”

Haremos lo mismo para la otra actividad restante

DOCENTE: Mg. Marcellino Torres Villanueva Pag. 37


UNIVERSIDAD NACIONAL DE TRUJILLO CURSO: TEMAS AVANZADOS 2

Ahora sí, el resultado final sería este:

Ejecutamos la aplicación y tendremos lo siguiente:

Y al hacer clic en uno de los botones, nos mandara a una nueva pantalla, y con esto ya habremos
completado el capitulo 4, espero que hayas llegado hasta acá y no hayas tenido ningún problema,
sigue así y llegaras lejos.

DOCENTE: Mg. Marcellino Torres Villanueva Pag. 38


UNIVERSIDAD NACIONAL DE TRUJILLO CURSO: TEMAS AVANZADOS 2

Ejercicios

Ejercicio 1: Suma de dos números

Nivel del ejercicio: ☆☆

Requerimiento: Hacer la Siguiente Pantalla con las siguientes especificaciones:

- Agregar dos cajas de Texto que solo permita números


- Al hacer click en el botón, que en un TextView se muestre el resultado de la suma de los números
de las dos cajas de texto
- Validar las cajas de texto
- Diseño libre

Nivel del ejercicio: ☆☆

Requerimiento: Hacer la Siguiente Pantalla con las siguientes especificaciones:

- Agregar una caja de Texto que solo permita números


- La caja de texto será para ingresar la temperatura en escala Celsius
- Agregar 2 botones
- El primer botón, al hacer clic, que me muestre la temperatura en escala Fahrenheit en un TextView
- El segundo botón, al hacer clic, que muestre la temperatura en escala Kelvin en un TextView.
- Validar las cajas de texto
- Diseño libre

Ejercicio 3: Serie Fibonacci

Nivel del ejercicio: ☆☆☆

Requerimiento: Hacer la Siguiente Pantalla con las siguientes especificaciones:

- Agregar una caja de texto que solo permite números


- Agregar un botón, que, al hacer clic, obtenga el numero de la caja de texto
- Imprimir la serie Fibonacci en un TextView hasta la iesima posición obtenida por el EditText
Ejemplo:
Si ingreso el numero 10, el textview mostrara lo siguiente:
0-1-1-2-3-5-8-13-21-34
- Validar las cajas de texto
- Diseño Libre

Ejercicio 4: Calculadora

Nivel del ejercicio: ☆☆☆☆

Requerimiento: Realizar una calculadora que sume, reste, multiplique y divida, el diseño es libre, usen todo
lo aprendido hasta ahora para realizarlo

(NO TRATEN DE BUSCAR LA SOLUCION EN INTERNET, A PRIMERA VISTA UNO SE DARA CUENTA CUANDO EL
CODIGO ES DE INTERNET)

DOCENTE: Mg. Marcellino Torres Villanueva Pag. 39

Vous aimerez peut-être aussi