Professional Documents
Culture Documents
GUTIRREZ
Mdulo 0
Introduccin a Android
M.C. Jos Alberto Morales
Mancilla
amancilla58@hotmail.com
Introduccin
Herramientas opcionales de
desarrollo
Dos enfoques:
Dispositivos mviles soportados por buscadores web.
Trabajo desarrollado principalmente con HTML y
JavaScript.
Aplicaciones web con caractersticas nativas mejor que
una aplicacin completamente nativa.
Soporte para propiedades nativas que pueden ser
limitadas o usar APIs de JavaScript.
Traducir o compilar a un lenguaje comn tal como C# o
JavaScript dentro de lenguajes nativos tal como Java para
Android con su mquina virtual Dalvik o Objective-C para
IOS.
Jos A. Morales Mancilla
Herramientas opcionales de
desarrollo
Desarrollo con lenguajes .NET con C# con el objetivo
de generar aplicaciones para iPhone Apple y Android.
PhoneGap es una plataforma opcional de desarrollo
de aplicaciones para dispositivos mviles con
estndares de desarrollo (HTML5, JS,CSS), el cul
permite
generar aplicaciones para Android, IOS,
BlackBerry, Windows Mvil con tec. Web.
Appcelerator Titanium
es otra plataforma de
desarrollo de aplicaciones para Android. Titanium
puede ser compilado dentro del lenguaje nativo.
Android NDK se pueden desarrollar aplicaciones
para Android con C++. Hay cierta porcin de la
Jos A. Morales Mancilla
Arquitectura de Android
que est en C++. El cdigo
Arquitectura de Android
Android y Java
Instalacin de Android
Ir a a la pgina de Android http://www.android.com y
seleccionar la opcin Developers.
Obtener el SDK
Elegir la opcin Get the SDK
Laboratorio (Lab00)
Para poder instalar el ambiente de
Android, hay dos opciones:
1. Usar bundle
2. Manualmente instalar todos los
componentes
Archivos importantes
Archivos importantes
Archivo AndroidManifest.xml
Laboratorio (Lab0A)
Componentes o bloques
de construccin
Bloques de construccin
Contenedores
Contenedores o containers
Un Layout es un contenedor de una o ms vistas
y controla su comportamiento y posicin. Un
layout puede a otro Layout. Es un descendiente
de la clase View.
Android soporta un rango de contenedores que
tienen diferentes reglas de diseo:
LinearLayout
RelativeLayout
TableLayout
AbsoluteLayout
FrameLayout
Jos A. Morales Mancilla
LinearLayout
LinearLayout.
Dispone
a
los
widgets
o
contenedores hijos en filas o columnas uno despus
del otro.
Trabaja de manera similar al FlowLayout de
Java/swing
Por default cualquier elemento en LinearLayout
los coloca o alinea de izquierda y arriba. Se puede
definir lo siguiente:
Orientation
Layout_width
Layout_height
Weight
RelativeLayout
RelativeLayout. Dispone la colocacin de los
widgets en relacin a otros widgets en el contenedor
y el contenedor padre.
Tiene una posicin relativa al contenedor.
Posicin relativa con otros widgets.
Por
ejemplo
la
posicin
relativa
al
contenedor:
Android:layout_alignParentTop: Alnea a los widgets
con el tope del contenedor.
Posicin relativa a otros widgets:
Jos A. Morales Mancilla
Android:layout_above: indica que el wigdet podra
TableLayout
TableLayout. Distribuye a los widgets de manera
tabular.
Permite colocar a los widgets en forma de matriz
del tamao que se especifique.
El nmero de filas y columnas forzar a reducir el
tamao de su contenido.
TableLayout trabaja en conjunto con TableRow.
Laboratorio (Lab0B)
Contenedor
Crear una aplicacin usando
LinearLayout (Lab0B1)
Crear una aplicacin usando
RelativeLayout (Lab0B2)
Crear una aplicacin usando
TableLayout (Lab0B3)
LinearActivity.java
Activity_linear.xml
Activity_relative.xml
Activity_table.xml
Laboratorio (Lab0B4)
En Android los botones permiten
interactuar con la aplicacin
mediante eventos.
Definicin de un botn en el layout
Archivo activity.java
(Lab0B4)
Laboratorio (Lab0B5)
El AbsoluteLayout permite indicar
las coordenadas (x,y) donde se
desea
visualizar
cada
widget.
Android
permite
indicar
las
coordenadas de varias formas:
Px (pixeles)
Mm (milmetros)
In (pulgadas)
Pt (puntos) equivale a 1/72pulgadas
Jos A. Morales Mancilla
AbsoluteLayout
Dp o dip Supone un dispositivo de
160 pxeles por pulgada (densidad).
Si el dispositivo tiene otra densidad
se realizar la correspondiente regla
de tres.
Activity_absolute.xml
AbsoluteActivity.java
FrameLayout
FrameLayout todos los elementos
usando todo el contenedor, sin
distribuirlos. Este Layout se utiliza
cuando
se
desea
que
varios
componentes ocupen el mismo lugar
pero solo uno de ellos ser visible.
Para modificar la visibilidad de un
componente se utiliza la propiedad
visibility
Jos A. Morales Mancilla
Laboratorio (Lab0B6)
Eventos
Evento
Eventos
Eventos
Laboratorio (lab0C1)
import android.view.View
import android.widget.Button
- Crear actividad que implemente
View.OnClickListener de manera
delegada
Crear variable de instancia botn de
tipo Button
Utilizar el LogCat para imprimir el
mensaje
Jos A. Morales Mancilla
EventoBotonActivity.java (Lab0C1)
Activity_evento_boton.xml
Laboratorio (lab0C2)
Activity_evento_fecha.xml
Laboratorio Lab0C3
Creando un objeto de una clase que
implementa
la
interface
OnClickListener,
hacer
una
aplicacin para calcular el factorial
de un numero al presionar un botn.
En este ejercicio disear la interface
de manera visual (no en xml)
Lab0C3
FactorialActivity.java
Lab0C4
Implementando
la
interface
OnClickListener
hacer
una
aplicacin para hacer la suma de dos
nmeros de tipo Double, usar tres
EditText, dos para introducir los
valores y uno para poner el resultado
de la suma.
Disear la interface de manera
visual.
Jos A. Morales Mancilla
SumaActivity.java
(Lab0C4)
Intentos
Intent
Mensajes que son enviados entre los
bloques principales de una aplicacin
o de otra aplicacin Android.
Ellos provocan o accionan el inicio de
una actividad, le dicen al servicio
cuando iniciar o parar, enviar un
mensaje a un broadcast.
Los proveedores de contenidos no
utilizan los intentos.
Jos A. Morales Mancilla
Laboratorio (Lab0D)
Intentos
Crear una aplicacin para comunicar
dos vistas usando intentos
onStart()
onResume
()
onPause(
No
No
No
No
Si
Siguient
e
onStart()
onStart()
onResume(
)
o
onStop()
onPause()
onResume(
)
Esatado
Descripcin
onStop()
onDestro
y()
Aborta
ble
Si
Si
Siguient
e
onRestart
()
o
onDestro
y()
NADA
Agregando cdigo a
MainActivity.java
Agregando cdigo a
MainActivity.java
Agregando cdigo a
MainActivity.java
Ejecutando la aplicacin
Presionar el botn
de retorno y
observar la consola
LogCat, despus
iniciar la actividad
presionando el
icono de la
aplicacin,
observar que
sucede
Toast
Toast
Un toast es un mensaje que se
muestra en pantalla durante unos
segundos al usuario para luego
volver
a
desaparecer
automticamente sin requerir ningn
tipo de actuacin por su parte, y sin
recibir el foco en ningn momento (o
dicho de otra forma, sin interferir en
las acciones que est realizando el
usuario en ese momento).
Jos A. Morales Mancilla
Toast
Aunque son personalizables, aparecen por
defecto en la parte inferior de la pantalla,
sobre un rectngulo gris ligeramente
translcido.
Por
sus
propias
caractersticas, este tipo de notificaciones
son ideales para mostrar mensajes
rpidos y sencillos al usuario, pero por el
contrario, al no requerir confirmacin por
su parte, no deberan utilizarse para hacer
notificaciones demasiado importantes.
Jos A. Morales Mancilla
Toast
Esta clase dispone de un mtodo esttico
makeText() al que deberemos pasar como
parmetro el contexto de la actividad, el texto
a mostrar, y la duracin del mensaje, que
puede tomar los valores LENGTH_LONG o
LENGTH_SHORT, dependiendo del tiempo
que queramos que la notificacin aparezca en
pantalla. Tras obtener una referencia al objeto
Toast a travs de este mtodo, ya slo nos
quedara mostrarlo en pantalla mediante el
mtodo show().
Jos A. Morales Mancilla
Toast bsico
El siguiente cdigo muestra un Toast bsico
Toast (Lab0F1)
Colocando un botn
de manera visual
ToastActivity.java
Ejecucin de la
aplicacin
MainActivity.java
(Lab0F2)
Continuacin
MainActivity.java
Ejecutando la aplicacin
Al ejecutar la aplicacin el
Toast aparece en la zona
indicada