Beruflich Dokumente
Kultur Dokumente
CONTENIDO
crear un proyecto en eclipse ............................................................................................................................ 3
Estructura bsica de un proyecto Android ................................................................................................ 7
Archivo de recursos de dimensiones ............................................................................................................ 8
Uso de colores desde XML ................................................................................................................................. 9
Colores..................................................................................................................................................................... 10
Valores literales .............................................................................................................................................. 10
Archivo de recursos de colores ................................................................................................................ 10
Uso de colores desde XML .......................................................................................................................... 13
Ejemplo de uso de botones y campos de texto ....................................................................................... 15
Archivo AndroidManifest.xml........................................................................................................................ 16
Pestaa Manifest ............................................................................................................................................ 17
Pestaa Application ...................................................................................................................................... 18
Pestaa Permissions ..................................................................................................................................... 19
Pestaa Instrumentation ............................................................................................................................ 19
Pestaa AndroidManifest.xml................................................................................................................... 20
manejo de controles (Edittext, textview, button).................................................................................. 21
CDIGO PARA EL FUNCIONAMIENTO DE LA CALCULADORA ........................................................ 26
Paso de datos entre actividades ................................................................................................................... 28
USO DEL CONTROL SPINNER ........................................................................................................................ 34
CREACIN de MENS ....................................................................................................................................... 43
Manejo de Clases y uso del control RadioGroup .................................................................................... 47
Manejo del control checkbox ......................................................................................................................... 51
Listas ........................................................................................................................................................................ 53
ListView ............................................................................................................................................................. 53
Obtener la posicin seleccionada ............................................................................................................ 55
Manejo de base de datos SQLite ................................................................................................................... 56
Registrar, eliminar, modificar y consultar SQLite ................................................................................. 60
Uso de GPS ............................................................................................................................................................. 68
Obtener el IMEI del dispositivo..................................................................................................................... 72
Uso de GoogleMaps ............................................................................................................................................ 74
Escribir Calculadora en el cuadro de Application Name que ser el nombre del Proyecto
y luego presionar Next.
3|P g i n a
4|P g i n a
5|P g i n a
En el cuadro de Activity Name escribir Inicio, que ser el nombre de la primera actividad,
luego presionar el botn Finish
6|P g i n a
src:
En ella se almacenan las clases java que contienen
la lgica de nuestra aplicacin.
gen:
Clases autogeneradas por el entorno de desarrollo.
Contienen referencias a los elementos que
definamos en la zona de recursos, como veremos
ms adelante.
assets:
Aqu va todo lo que no encaja en ninguna otra
carpeta. Bsicamente es una estructura de
carpetas y archivos que nuestra aplicacin puede
indexar, recorrer y utilizar sin necesidad de
acceder a ellos como recursos.
bin:
Aplicacin compilada.
res:
En ella se almacenan todos los recursos de nuestra
aplicacin, ya sean imgenes, estructura de
pantallas, estilos de la aplicacin, vdeos, etc.
En las carpetas drawable se guardarn las
imgenes que utiliza la aplicacin. Cada
dispositivo android tiene una resolucin de
pantalla y una densidad en pxeles por pulgada.
Por ello es necesario crear imgenes con
resolucin distinta para pantallas distintas. Estas
tres carpetas distinguen qu imgenes se
utilizarn para pantallas de alta densidad (hdpi),
media (mdpi) y baja (ldpi).
Layout:
Guarda ficheros XML que contienen la estructura de los componentes que vamos a
mostrar en nuestra aplicacin, ya sean pantallas completas o controles personalizados.
7|P g i n a
Values
Consiste en un conjunto de recursos definidos en XML, como son la declaracin de las
pantallas de nuestra aplicacin, o las cadenas de textos que se mostrarn en la misma.
Estas ltimas tambin tienen un archivo generado desde el principio: strings.xml. Es muy
recomendable que desde el principio todas las cadenas de texto se almacenen en l,
porque facilitarn en gran medida la traduccin a otros idiomas.
AndroidManifest.xml:
Almacena la informacin general de la aplicacin, como el nombre, la versin de Android,
las pantallas que tiene, el tema, etc.
Desde el editor visual puedes gestionar tambin las dimensiones declaradas. Desde ah
puedes aadir nuevas dimensiones, editar, eliminar y ordenarlas. Para aadir nuevas
dimensiones, tan slo debes usar el botn Add y elegir en la lista la opcin Dimension.
8|P g i n a
Recuerda guardar los cambios usando la combinacin de teclas Ctrl+S o el men File >
Save.
@dimen/nombre_dimensin
Por ejemplo, si se quiere cambiar el tamao del texto de un TextView debes indicar la
referencia a la dimensin en la propiedad Text Size.
COLORES
A diferentes objetos View de los layouts se les puede asignar colores. Por ejemplo, a un
TextView se le puede asignar un color para el texto o un color para el fondo.
Al igual que ocurre con muchos otros elementos utilizados en el desarrollo de aplicaciones
para Android, los valores se pueden asignar literalmente (indicando directamente el valor
numrico correspondiente al color), o hacer referencia a un recurso declarado
previamente.
VALORES LITERALES
Para indicar un valor de manera literal, se puede usar uno de los siguientes formatos:
#RGB
#ARGB
#RRGGBB
#AARRGGBB
Donde R hace referencia al valor para el color rojo, G para el color verde, B para el color
azul y A para el canal alfa (opacidad). Cada valor se indica con un dgito hexadecimal (0 a
F). Por ejemplo, el color rojo puro se puede indicar como #F00, o el color rosa intenso
como #FF1493. En la pgina de Wikipedia Colores HTML puedes ver los cdigos
correspondientes a multitud de colores.
10 | P g i n a
Si no existe ese archivo en tu proyecto, puedes crearlo desde Eclipse usando el men File o
el men contextual del proyecto, seleccionando la opcin New > Android XML File. En la
primera ventana del asistente para la creacin del archivo XML selecciona o comprueba
que est seleccionado el tipo de recurso Values, y en el nombre del archivo indica
colors.xml.
11 | P g i n a
El formato del archivo XML es el habitual del utilizado en los dems recursos. Por ejemplo:
Desde el editor visual puedes gestionar tambin los colores declarados. Desde ah puedes
aadir nuevos colores, editar, eliminar y ordenarlos. Para aadir nuevos colores, tan slo
debes usar el botn Add y elegir en la lista la opcin Color.
12 | P g i n a
En la parte derecha aparece el detalle del color que se est aadiendo o editando, donde se
debe indica un nombre para el color, y su valor asociado siguiendo uno de los formatos
comentados anteriormente.
Guardar los cambios usando la combinacin de teclas Ctrl+S o el men File > Save.
13 | P g i n a
Para hacer referencia a un color declarado en el archivo de recursos colors.xml desde otro
fichero XML (por ejemplo, desde un layout), debes usar el formato habitual para hacer
referencia a un recurso desde XML, indicando en este caso que es un recurso de tipo color:
@color/nombre_color
Por ejemplo, si se quiere cambiar el color del texto de un TextView debes indicar la
referencia al color en la propiedad Text Color.
14 | P g i n a
15 | P g i n a
Para que el botn realice la copia del texto que se encuentre en el primer campo de texto al
segundo campo de texto, puedes usar un cdigo similar al siguiente en la Activity:
ARCHIVO ANDROIDMANIFEST.XML
El fichero AndroidManifest.xml que debe tener cualquier aplicacin Android en su carpeta
principal, contiene informacin que debe conocer el sistema sobre la aplicacin. Entre
otras cosas contiene lo siguiente:
Nombre del paquete Java para la aplicacin. Este nombre sirve como un
identificador nico de la aplicacin.
Describe los componentes de la aplicacin (activities, services, broadcast receivers
y content providers). Se nombran las clases que los implementan y se publican sus
capacidades. As el sistema puede conocer los componentes que hay y bajo qu
condiciones se iniciarn.
Declara los permisos que la aplicacin debe tener para poder acceder a
determinadas parter protegidas de la API o para interactuar con otras aplicaciones.
Lista las clases Instrumentation que permiten monitorizar la interaccin de la
aplicacin con el sistema. Estas declaraciones slo se usarn mientras la aplicacin
est en la fase de desarrollo, y se eliminarn antes de publicarla.
Declara el nivel mnimo de la API Android que requiere la aplicacin.
Lista las bibliotecas con las que la aplicacin debe estar enlazada.
Eclipse permite modificar los valores de este fichero de una forma grfica, separando la
informacin en varias pestaas que puedes ver en la parte inferior de la ventana que
aparece al abrir este fichero.
16 | P g i n a
PESTAA MANIFEST
En una aplicacin bsica contiene informacin sobre la versin de la misma y algunos
extras como la versin mnima de SDK requerida y hacia la que va dirigida la aplicacin.
17 | P g i n a
PESTAA APPLICATION
Inicialmente contiene el tema o plantilla que va a utilizar la aplicacin en sus pantallas, el
nombre de la aplicacin y su icono. Adems refleja que contiene la activity llamada
MainActivity a la que se le aplica el filtro de activity principal (main) y el filtro de launcher
que informa al sistema que dicha activity debe ser incluida en la lista de lanzadores de
aplicaciones.
18 | P g i n a
PESTAA PERMISSIONS
Inicialmente se muestra vaca y puede contener los permisos que debe aceptar el usuario
para que la aplicacin pueda ejecutarse.
PESTAA INSTRUMENTATION
Inicialmente vaca y en la que se pueden indicar una serie de clases que permiten
monitorizar la interaccin de la aplicacin con el sistema.
19 | P g i n a
PESTAA ANDROIDMANIFEST.XML
Muestra y permite editar el contenido del fichero. Slo contiene las etiquetas que han sido
configuradas, lo que en ocasiones permite una visin ms sencilla que usando las ventanas
anteriores.
20 | P g i n a
21 | P g i n a
Seleccionar el primer TextView y buscar la propiedad Text, luego hacer clic en los puntos
suspensivos.
22 | P g i n a
23 | P g i n a
24 | P g i n a
25 | P g i n a
26 | P g i n a
27 | P g i n a
28 | P g i n a
29 | P g i n a
Por otro lado, estn los recursos que se definen en strings.xml, donde se declaran los
ttulos de los textview, button, etc. Adems los usuarios registrados en el sistema, y que
despus recogerermos en un array de strings:
Ya estn todos los recursos y controles definidos (lo que sera la interfaz), ahora vamos a
la programacin en Java, en el MainActivity.java recogeremos los datos introducidos por el
usuario y usaremos Bundle para enviarlos a la otra actividad.
30 | P g i n a
Estos datos sern enviados a la actividad, actividad_validar, que ser gestionada por
Validar.java, que comprobar si el usuario est registrado en la aplicacin, y mostrar un
mensaje. Para obtener los datos tambin se usar el objeto Bundle, como se ve en el
cdigo.
31 | P g i n a
32 | P g i n a
33 | P g i n a
34 | P g i n a
Para que podamos tener la posibilidad de elegir un tipo de tarea asignada a registrar
necesitamos insertar en este layout un control Spinner (combobox o dropdownlistbox) en
otros lenguajes de programacin, pero para que este control tenga la lista de tipos de tarea
a asignar debemos de llenar de alguna manera esos valores haca el control Spinner.
Presionar (Ctrl +N) / Entrar a la Carpeta Android /Seleccionar Android XML Values File y
Presionar Next
35 | P g i n a
36 | P g i n a
37 | P g i n a
Relacionamos el Spinner con el recurso creado tareas.xml, hacemos clic derecho sobre el
Spinner / Edit Entiries.
38 | P g i n a
39 | P g i n a
Explicando el cdigo:
En primer lugar necesitamos definir las variables que se utilizarn para pasar los
respectivos valores a la ventana de confirmacin de tarea registrada.
Creamos el mtodo que nos permitir enviar los datos de la primera actividad (registro de
tarea asignada) a la actividad de confirmacin de registro de tarea asignada:
40 | P g i n a
Las variables valor1, valor2 y valor3 son las que van a permitir enviar sus
correspondientes valores a la otra ventana.
Ahora programamos la funcionalidad de la ventana DatosEnviados (ventana de
confirmacin de registro de tarea asignada), para acceder al cdigo hacemos doble clic en
DatosEnviados.java
41 | P g i n a
Probamos la aplicacin:
42 | P g i n a
CREACIN DE MENS
Un docente de una determinada Universidad Desea tener un registro completo de todas
las diferentes calificaciones que un alumno a obtenido en la asignatura que el ensea, en
este caso tomaremos el caso de que la Asignatura es el Curso de Matemticas I.
Las opciones que debe de contemplar el Sistema de Notas son:
Registro de Calificaciones.
Bsqueda de Calificaciones.
Edicin de Calificaciones.
43 | P g i n a
44 | P g i n a
Digitar en Identificador y el ttulo del men tal como se muestra en la imagen, repetir el
proceso para agregar un tercer elemento
45 | P g i n a
46 | P g i n a
48 | P g i n a
Escribir el siguiente Cdigo que vendran a ser 2 mtodos que permiten obtener un valor
como resultado.
49 | P g i n a
50 | P g i n a
51 | P g i n a
52 | P g i n a
LISTAS
Es muy frecuente en las aplicaciones para dispositivos mviles, el uso de listas para
mostrar una serie de elementos. El usuario puede ver la lista completa de los elementos
que forman la lista, pudiendo desplazarse a travs de ellos. Si el usuario selecciona
alguno de los elementos de la lista, la aplicacin podr realizar alguna accin relacionado
con el elemento indicado
LISTVIEW
Puedes crear una lista en una Activity de la aplicacin insertando un elemento ListView
que encontrars en la seccin Composite de la palete.
54 | P g i n a
55 | P g i n a
Nos permite crear, actualizar, y conectar con una base de datos SQLite
Es solo un constructor.
Mtodos:
onCreate()
onUpgrade()
Mtodo execSQL()
Permite ejecutar cualquier sentencia SQL sobre la base de datos.
No devuelve resultados.
Mtodos insert(), update() y delete()
Uso de parmetros.
Separa tablas, valores y condiciones en parmetros independientes.
Mtodo rawQuery().
nico parmetro, comando SQL.
Resultado de la consulta en forma de Cursor.
Mtodo query().
56 | P g i n a
Varios parmetros:
Nombre de la tabla.
Array campos, clusula WHERE.
FREDDY BENDEZU FIGUEROA
Mtodos:
moveToFirst(): mueve el puntero del cursor al primer registro
devuelto.
moveToNext(): mueve el puntero del cursor al siguiente registro
devuelto.
Creamos un nuevo proyecto Android con el nombre Ejemsqlite, agregamos una clase con
el nombre Datos y escribimos el siguiente cdigo.
57 | P g i n a
58 | P g i n a
Agregar el siguiente cdigo en la clase Datos.java, que es un mtodo que permite agregar
informacin a la tabla Usuarios.
59 | P g i n a
Registrar de personas.
Consultar por el DNI (para saber dnde vota).
Eliminar registros.
Modificacin de datos.
Lo primero que haremos es crear una clase que herede de SQLiteOpenHelper. Esta clase
nos permite crear la base de datos y actualizar la estructura de tablas y datos iniciales.
Debemos implementar el constructor y sobreescribir los mtodos onCreate y onUpgrade.
El mtodo onCreate, se le llama cuando la base de datos se crea por primera vez. Aqu es
donde se define la estructura de las tablas y se cargan eventualmente los datos iniciales
En el mtodo onUpgrade se llama cuando la base de datos debe ser actualizada. Tiene por
objetivo eliminar tablas, aadir tablas, o hacer cualquier otra cosa que necesita para
actualizarse.
60 | P g i n a
En el constructor solo llamamos al constructor de la clase padre pasando los datos que
llegan en los parmetros:
public AdminSQLiteOpenHelper(Context context, String nombre, CursorFactory factory, int version) {
super(context, nombre, factory, version);
}
En el mtodo onCreate procedemos a crear la tabla votantes con los cuatro campos
respectivos y definiendo el campo dni como primary key:
public void onCreate(SQLiteDatabase db) {
db.execSQL("create table votantes(dni integer primary key, nombre text, colegio text, nromesa integer)");
}
61 | P g i n a
62 | P g i n a
63 | P g i n a
Registrar datos.
Cuando se presiona el botn registrar se ejecuta el mtodo "alta" recordemos inicializar la
propiedad "OnClick" del botn desde la ventana de visualizacin del archivo XML.
Lo primero que hacemos en este mtodo es crear un objeto de la clase que planteamos
anteriormente y le pasamos al constructor this (referencia del Activity actual),
"administracion" (es el nombre de la base de datos que crearemos en el caso que no
exista) luego pasamos null y un uno indicando que es la primer versin de la base de datos
(en caso que cambiemos la estructura o agreguemos tablas por ejemplo podemos pasar un
dos en lugar de un uno para que se ejecute el mtodo onUpgrade donde indicamos la
nuestra estructura de la base de datos)
64 | P g i n a
65 | P g i n a
Consulta de datos.
Cuando se presiona el botn "Consulta por DNI" se ejecuta el mtodo consulta:
public void consulta(View v) {
AdminSQLiteOpenHelper admin=new AdminSQLiteOpenHelper(this, "administracion", null, 1);
SQLiteDatabase bd=admin.getWritableDatabase();
String dni=et1.getText().toString();
Cursor fila=bd.rawQuery("select nombre,colegio,nromesa from votantes where dni="+dni+"",null);
if (fila.moveToFirst())
{
et2.setText(fila.getString(0));
et3.setText(fila.getString(1));
et4.setText(fila.getString(2));
}
else
Toast.makeText(this, "No existe una persona con dicho dni", Toast.LENGTH_SHORT).show();
bd.close();
Modificacin de datos.
En la modificacin de datos debemos crear un objeto de la clase ContentValues y mediante
el mtodo put almacenar los valores para cada campo que ser modificado. Luego se llama
al mtodo update de la clase SQLiteDatabase pasando el nombre de la tabla, el objeto de la
clase ContentValues y la condicin del where (el cuanto parmetro en este ejemplo no se
lo emplea)
public void modificacion(View v) {
AdminSQLiteOpenHelper admin=new AdminSQLiteOpenHelper(this, "administracion", null, 1);
SQLiteDatabase bd=admin.getWritableDatabase();
String dni=et1.getText().toString();
String nombre=et2.getText().toString();
String colegio=et3.getText().toString();
String nromesa=et4.getText().toString();
ContentValues registro=new ContentValues();
registro.put("nombre",nombre);
registro.put("colegio",colegio);
registro.put("nromesa",nromesa);
67 | P g i n a
USO DE GPS
Disear la siguiente aplicacin con la interfaz que se muestra.
68 | P g i n a
69 | P g i n a
70 | P g i n a
Modificamos el AndroidManifest.xml
71 | P g i n a
72 | P g i n a
73 | P g i n a
USO DE GOOGLEMAPS
Codigo del Layout principal mimapa.xml
74 | P g i n a
75 | P g i n a
76 | P g i n a
77 | P g i n a