PDF de programación - Unidad II Interfaz Grafica (continuación …) - Programación para dispositivos móviles

Imágen de pdf Unidad II Interfaz Grafica (continuación …) - Programación para dispositivos móviles

Unidad II Interfaz Grafica (continuación …) - Programación para dispositivos móvilesgráfica de visualizaciones

Publicado el 5 de Octubre del 2018
265 visualizaciones desde el 5 de Octubre del 2018
780,4 KB
40 paginas
Creado hace 3a (31/03/2016)
Clase:06

1

Unidad II



Interfaz Grafica
(continuación …)



Basado en clases de
Ing. Carlos A. Aguilar


2

Agenda

• Desarrollo de Apps para Android

• Eventos(continuacion)
• Menus
• Menus contextuales
• Elementos de Aplicacion en Android

• Services
• Broadcast Receiver
• Activity
• Content Provider

• Intent



3

Eventos(continuación ...)

Los eventos que posee un View y
interfaces son:
• onClick()

- View.OnClickListener. Este evento es

las respectivas

disparado cuando el usuario toca el View.

• trackball.onLongClick()

- View.OnLongClickListener.
Este evento es disparado cuando el usuario toca un
View por un tiempo determinado.

• onFocusChange() - View.OnFocusChangeListener. Este
evento es disparado cuando el usuario da el focus o lo
quita de un View por medio de
las teclas de
navegación o el trakball

4

Eventos(continuación ...)

• onKey() - View.OnKeyListener. Este evento es lanzado
cuando un View tiene el focus y el usuario presiona
una tecla en su teclado físico o virtual.

• onTouch() - View.OnTouchListener. Este evento es
llamado cuando el usuario realiza una acción que es
calificado como un toque o realizar un gesto.

• onCreateContextMenu()

-
View.OnCreateContextMenuListener.
llamado
cuando un menú contextual esta a punto de ser creada
como reacción a un click prolongado.

Es

5

Menús

La mayoría de aplicaciones en Android implementan
Menús y son importantes porque exponen las funciones
de la aplicación al usuario
• Los Menús pueden ser de 3 tipos:
• Menús de opciones: Llamados cuando el usuario

presiona la tecla Menú en su dispositivo.

• Menús Contextuales: Son llamados cuando el usuario
mantiene presionado un elemento de la UI. Similar al
click derecho en la pc

• Submenús: Un submenú que es mostrado cuando el
usuario presiona un elemento del menú de opciones.

6

Menús

• Al igual que los layouts y otros recursos, los menús
son creados son definidos en Android por medio de
XML.
Los menús se agrupan en la carpeta /res/menu/



7

Menús

• Un archivo XML con una definición de un menú luce

así:

8

Menús

• Desde el código fuente de la activity es necesario

implementar la apertura del menú por medio de un
Inflater(Inflador)

• El siguiente ejemplo crea un menú de opciones

9

Menús

• Para capturar la selección del usuario, Android notifica a la

activity desde la cual se inflo el Menu con el item que el
usuario selección a traves de un Callback

10

Menús contextuales

Los menús contextuales se añaden a una View y deben ser
registrados en la Activity por medio del método
registerForContextMenu()

11

Menús contextuales

• Cuando el usuario mantiene presionado un View,

Android llama al callback onCreateContextMenu, asi:

12

Menús contextuales

Luego cuando el usuario selecciona un elemento de un
View, se llama al callback onContextItemSelected.

13

Dialogos

Un Dialogo es una pequeña ventana al frente de una
actividad
• Para abrir un Dialogo este debe ser llamado desde una
actividad por el método showDialog(int); el entero que
se pasa como parámetro al método es un numero que
identifica al dialogo inequívocamente.

• Este método provoca que Android llame al Callback
onCreateDialog(int) el cual es una implementación
definida por el programador para cargar los diálogos.

• Para cerrar el dialogo llamamos al metodo dismiss()

desde el dialogo o por medio de dismissDialog(int) para
cerrarlo desde cualquier punto de la actividad.

14

Dialogos

Ejemplo, si una activity posee 2 diálogos, cuya identificación
es declarada así:

La implementación del callback OnCreateDialog, quedaría
así:

15

Dialogos

Los Diálogos pueden mostrar diferentes opciones y
existen varias formas de personalizarlos.


simple es usando una

forma mas

La
implementación de AlertDialog.

• Un AlertDialog permite agregar botones, títulos,
texto, uno, dos o tres botones, una lista, opciones,
etc.

• Para crear un AlertDialog utilizamos la clase

AlertDialog.Builder

16

Dialogos

El Código Alert Dialog con Botones es como se
muestra:

17

Dialogos

El Código Alert Dialog con una lista es como se
muestra:

18

Dialogos

El Código Alert Dialog con una lista seleccionable es
como se muestra:

19

Elementos de Aplicacion:

Services

Los servicios (service) son componentes sin interfaz
gráfica que se ejecutan en segundo plano. En concepto,
son similares a los servicios presentes en cualquier otro
sistema operativo. Los servicios pueden realizar cualquier
tipo de acciones, por ejemplo actualizar datos, lanzar
notificaciones, o incluso mostrar elementos visuales
(p.ej. actividades) si se necesita en algún momento la
interacción con del usuario.

20

Broadcast Receiver

Un broadcast receiver es un componente destinado a
detectar y reaccionar ante determinados mensajes o
eventos globales generados por el sistema (por ejemplo:
“Batería baja”, “SMS recibido”, “Tarjeta SD insertada”, …)
o por otras aplicaciones (cualquier aplicación puede
generar mensajes (intents, en terminología Android)
broadcast, es decir, no dirigidos a una aplicación concreta
sino a cualquiera que quiera escucharlo).

21

Activity

Las actividades (activities) representan el componente
principal de la interfaz gráfica de una aplicación Android.
Se puede pensar en una actividad como el elemento
análogo a una ventana o pantalla en cualquier otro
lenguaje visual.

22

Intents

3 de los 4 componentes principales de una aplicación
(Activities, Services y Broadcast receivers) son activados
mediante mensajes
• Estos mensajes son llamados Intents
• El mecanismo de Intents permite que podamos abrir
elementos en nuestra aplicación u elementos en otra
aplicación.

• Un intent es una abstracción de una acción que se

desea realizar junto con la descripción de información
adicional.

23

Intents

El mecanismo propio para enviar al Intent depende del
tipo del componente.
• Por ejemplo, para abrir una activity podemos usar:

startActivity() o startActivityforResult()

• Para iniciar un Servicio, utilizamos

Context.startService() . Si lo que deseamos es
conectarnos a un servicio para interactuar con el
llamamos a Context.bindService()

• Para enviar un broadcast, utilizamos

Context.sendBroadcast(),
Context.sendOrderedBroadcast() o
Context.sendStickyBroadcast()

24

Intents

• Android se encarga de entregar el intent a la

actividad, servicio o broadcast que responde al
intent.

• Los intents no se cruzan, es decir, siempre son

entregados al tipo de componente que
corresponde al mecanismo utilizado para
enviarlo

• Por ejemplo, un intent enviado por

startActivity jamas será enviado a un servicio o
un broadcast reciever.

25

¿Qué contiene un Intent?

Los intents contienen varios tipos de información, que
son útiles para que Android determine como realizar el
envío de los intents a los receptores adecuados y
también información que utilizara el receptor para
procesar la mensaje
• Component Name:

• Acá especificamos el nombre de la clase que

queremos llamar. Podemos ocupar los objetos
propios de la clase como SecondActivity.class o el
nombre del paquete declarado en el manifesto
como sv.ues.fia.Activities.SecondActivity. Este
parámetro puede ser nulo.

26

¿Qué contiene un Intent?

Action:
• Una acción es algo que debe se necesita hacer(en el
caso de activities) o la acción que sucedió(en el caso
de broadcast receivers). Como por ejemplo:

27

¿Qué contiene un Intent?



Se puede ver el
predefinidos en el API de referencia de Android

listado completo de Actions

• El programador puede definir sus propias Actions,
los
sin embargo, solo podrán
proyectos de los cuales conozcamos el nombre de
los Actions.
Las Actions permiten el remplazo de las apps del
sistema.

interactuar con





28

¿Qué contiene un Intent?

Data:
• Es posible enviar data incluida en el mensaje para que

pueda ser procesada por el receptor.

• La data puede contener valores, un URI y un MIME type
• El URI(Uniform Resource Identifier) especifica adonde esta
la información almacenada. Los Uri pueden ser recursos
web(http:), archivos(file:), Telefonos(tel:)

• El mime type identifica el tipo de contenido por ejemplo
“text/*” indicara que estas enviando un documento que
contiene texto. “text/plain” texto plano, etc.

• Android verifica ambos datos a la hora de tomar la decisión

de quien debe de responder a ese intent


29

¿Qué contiene un Intent?

Category:
Es una cadena de texto que tipo de componente debe de
responder a un Intent. Las 3 categorias mas utilizadas son:
• CATEGORY_LAUNCHER: Indica que el receptor del intent

debe de ser el Iniciador de una tarea. Las activities que
tienen esta categoria en un intent-filter son mostrados en
el listado de aplicaciones.

• CATEGORY_BROWSABLE: Indica que la actividad puede

recibir intents desde un navegador y procesar información
de manera apropiada. Por ejemplo, correos electrónicos,
imágenes, etc.

• CATEGORY_PREFERENCE: El componente que recibira el

intent es un panel de preferencias


30

¿Qué contiene un Intent?

Extras:
• Existen ciertas actions para las cuales es necesario

proporcionar información adicional. Por ejemplo, para la
action ACTION_TIMEZONE_CHANGED existe un extra que
indica la nueva zona horaria.

• Los intents tienen varios metodos putXXXX y getXXXX para
agregar diferentes tipos de datos al intent o recuperarlos.
Los valores son almacenados por medio de una llave que
identifica al recurso(Llave-Valor)


31

Intent filters

Si se llama a un componente de manera explicita(por
  • Links de descarga
http://lwp-l.com/pdf13758

Comentarios de: Unidad II Interfaz Grafica (continuación …) - Programación para dispositivos móviles (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios
Es necesario revisar y aceptar las políticas de privacidad