- ÍNDICE GENERAL
- 1. INTRODUCCIÓN 11
- 2. ANIMACIONES INTERPOLADAS 14
- 2.1. Traslaciones 14
- 2.2. Repetición de animaciones 18
- 2.3. Rotaciones 21
- 2.4. Dilataciones y contracciones 23
- 2.5. Apariciones y desapariciones 24
- 2.6. Series de animaciones 26
- 2.7. Animaciones con Java 29
- 2.8. AnimationListener 32
- 2.9. Animación de un layout . 34
- 2.10. Animación de un layout en Java 37
- 2.11. LayoutAnimationListener 38
- 3. ANIMACIÓN DE FOTOGRAMAS .41
- 3.1. Animación usando recursos 41
- 3.2. Animación de fotogramas en Java: AnimationDrawable 45
- 3.3. Ajuste de la relación de aspecto 46
- 4. PROCESOS EN BACKGROUND 52
- 4.1. Uso de Timer y RunOnUiThread 52
- 4.2. Modificación de la UI con post 55
- 4.3. Modificación de la UI con Handler.post 57
- 4.4. Métodos combinados para modificar la UI 59
- 4.5. Modificación de la UI con AsyncTask 64
- 4.6. Máquina tragaperras 67
- 5. SENSORES 76
- 5.1. Sensor de aceleración 76
- 5.2. Lista de sensores de un teléfono 85
- 5.3. Sensor de campo magnético 87
- 5.4. Sensor de orientación 95
- 5.5. Sensor de proximidad y sensor de luminosidad 103
- 6. DIÁLOGOS 110
- 6.1. Crear un diálogo 110
- 6.2. Diálogos con botones 113
- 6.3. Diálogos con ítems 116
- 6.4. Diálogos de elección única . 118
- 6.5. Diálogos de elección múltiple 121
- 6.6. Diálogos de progreso 124
- 6.7. Diálogos personalizados 127viii
- 7. MENÚS
- 7.1. Menú de opciones 132
- 7.2. Submenús . 134
- 7.3. Submenú con casillas 138
- 7.4. Menús de contexto 140
- 8. VISUALIZACIÓN DE LISTAS 144
- 8.1. La clase ListView 144
- 8.2. Listas interactivas . 146
- 8.3. ListView personalizado 150
- 8.4. Construcción de un BaseAdapter 153
- 8.5. La clase ListActivity . 160
- 8.6. Listas desplegables con SpinnerView. 162
- 9. BASES DE DATOS 166
- 9.1. Elementos de SQLite y SQL 166
- 9.1.1. Iniciar sqlite3 con ADB 166
- 9.1.2. Crear una tabla 168
- 9.1.3. Algunas expresiones SQL 169
- 9.2. Crear una base de datos con Android 171
- 9.3. Borrar filas de una tabla . 175
- 9.4. Automatizar las columnas del Cursor . 176
- 9.5. Abrir una base de datos con SQLiteOpenHelper 178
- 9.6. Borrar filas con delete 181
- 9.7. Realizar búsquedas con query 182
- 9.8. Adaptar un Cursor a un ListView. 189
- 10. PROVEEDORES DE CONTENIDOS 195
- 10.1. El proveedor de contactos 195
- 10.2. La tabla de datos de los contactos. 202
- 10.3. La tabla raw contacts 207
- 10.4. Añadir contactos . 210
- 10.5. Otros proveedores de contenidos 219
- 10.6. Implementación de un ContentProvider. 226
- 10.7. Acceso externo a nuestro ContentProvider 234
- 10.8. La clase UriMatcher. 239
- 11. COMUNICACIÓN ENTRE ACTIVIDADES 243
- 11.1. Secuencia de estados de una actividad 243
- 11.2. Resultado de una actividad 249
- 11.3. Resultado de cancelar una subactividad 255
- 11.4. Grupo de actividades 256
- 11.5. Abrir aplicaciones externas explícitamente 262
- 11.6. Abrir aplicaciones externas implícitamente 265
- 11.7. Uso del PackageManager. 267ix
- 11.8. Filtro de datos en un intent 272
- 11.9. Agregar funcionalidad de otras apps 278
- 12. INTERNET Y RSS FEEDS 285
- 12.1. Advertencia importante antes de conectar a Internet 285
- 12.2. Mostrar páginas web con WebView 285
- 12.3. Mostrar imágenes con WebView 290
- 12.4. Mostrar HTML con WebView. 291
- 12.5. Conexión HTTP 295
- 12.6. Introducción a XML y RSS 299
- 12.7. Análisis de documentos XML con DOM 301
- 12.8. Extraer los valores de los elementos XML 305
- 12.9. Conectar a un RSS feed 310
- 12.10. Inspeccionar una página WEB con Jsoup 318
- 12.11. Descargar y comprimir una imagen de Internet . 328
- 13. CORREO ELECTRÓNICO 333
- 13.1. Enviar un email con un intent 333
- 13.2. Enviar un fichero adjunto por email 337
- 13.3. Enviar ficheros comprimidos con zip. 342
- 14. LOCALIZACIÓN Y MAPAS 347
- 14.1. Coordenadas en Google Maps 347
- 14.2. El API de Google Maps 350
- 14.3. MapView 352
- 14.4. Control de mapas 355
- 14.5. Geocodificación 360
- 14.6. Localización 367
- 14.7. Dibujar sobre un mapa y geocodificación inversa 375
- APÉNDICE A 381
- La interfaz de usuario 381
- A.1. Orientación de una actividad. 381
- A.2. Dimensiones de la pantalla 382
- APÉNDICE B 385
- Complementos de Java 385
- B.1. Métodos con número variable de parámetros 385
- B.2. ArrayList 387
- B.3. Genéricos 390
- B.4. Definición de una clase con tipos genéricos 393
- APÉNDICE C 396
- Versiones de Android 396x
- BIBLIOGRAFÍA 397
0 comentarios:
Publicar un comentario