Está en la página 1de 3

Tecnologa de Programacin Departamento de Informtica | Universidad de Valladolid

Hola, Mundo 1

Hola, Mundo en Android


Elaborar una aplicacin Hola, Mundo para Android es trivial
Abrimos eclipse File -> New -> Android Project Project name: Hola Build target: Android 2.2 Package name: uva.tprg.Hola Create Activity: HolaActivity

Tecnologa de Programacin

Hola, Mundo

Arrancar un dispositivo virtual o conectar un dispositivo fsico Run -> Run -> Android Application Flix Prieto
Curso 2011/12
Universidad de Valladolid Tecnologa de Programacin Hola, Mundo 2 Tecnologa de Programacin Departamento de Informtica iX FL Hola, Mundo 3

... Y Hola, Mundo funciona de modo mgico

Eclipse y el dispositivo virtual en ejecucin

Elementos bsicos de eclipse


En eclipse podemos utilizar varias vistas simultneas Un conjunto de vistas constituyen una perspectiva sobre el proyecto Disponibles varias perspectivas predenidas (Java, DDMS, Debug,. . . ) Podemos cambiar la conguracin por defecto de una Perspectiva Podemos recuperar la conguracin por defecto de una perspectiva Elementos bsicos de la perspectiva Java Explorador: Seleccin de Aplicaciones o elementos dentro de ellas Editor JavaDoc: Muestra documentacin sobre el cdigo en edicin Consola: Mensajes relativos a la compilacin y/o ejecucin Esquema: Estructura del elemento en edicin

Universidad de Valladolid Tecnologa de Programacin

Departamento de Informtica

iX FL Hola, Mundo 4

Universidad de Valladolid Tecnologa de Programacin

Departamento de Informtica

iX FL Hola, Mundo 5

Elementos de un proyecto Android

Diagrama general de la construccin

src: Cdigo java del proyecto organizado en paquetes gen: Cdigo java generado por las herramientas de desarrollo res: Recursos del proyecto almacenados en formato XML AndroidManifest.xml: Identicacin, propiedades de la aplicacin, permisos requeridos para su ejecucin,...

Universidad de Valladolid Tecnologa de Programacin

Departamento de Informtica

iX FL Hola, Mundo 6

Universidad de Valladolid Tecnologa de Programacin

Departamento de Informtica

iX FL Hola, Mundo 7

La primera Actividad

Clases y cheros en Java


Las clases se organizan en paquetes que agrupan clases relacionadas package se utiliza para declarar el paquete a que pertenecen las clases del chero Para que una clase pueda ser usada fuera de su paquete hay que declararla como pblica En cada chero slo puede existir una clase pblica, con el mismo nombre que el chero La importacin de otras clases es explcita, mediante la clausula import Eclipse inserta los import necesarios (shiftcontrolo)

package uva.tprg.Hola; import android.app.Activity; import android.os.Bundle; public class HolaActivity extends Activity { / Called when the activity is rst created. / @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); } }

Universidad de Valladolid

Departamento de Informtica

iX FL

Universidad de Valladolid

Departamento de Informtica

iX FL

Tecnologa de Programacin

Hola, Mundo 8

Tecnologa de Programacin

Hola, Mundo 9

Mtodos, atributos y visibilidad

Herencia y redenicin

Todos los mtodos son funciones, aunque algunos devuelven void Se admite el polimorsmo sintctico Existen cuatro niveles de visibilidad:
Por defecto, visible para las clases del paquete public, visible para todas las clases private, visible slo para instancias de la clase protected, visible desde clases de paquete o sus descendientes

Slo se permite herencia simple entre clases extends indica la nica clase padre de la actual La marca @override indica que el siguiente mtodo es una redenicin
No es obligatorio, pero evita errores relacionados con la redenicin

super.onCreate() hace referencia al precursor del mtodo En resumen HolaActivity es una clase heredera de Activity que redene el mtodo onCreate

Un atributo pblico, lo es tambin para escritura, lo que rompe el principio de encapsulacin

Universidad de Valladolid Tecnologa de Programacin

Departamento de Informtica

iX FL Hola, Mundo 10

Universidad de Valladolid Tecnologa de Programacin

Departamento de Informtica

iX FL Hola, Mundo 11

Denicin del primer layout

Editando el layout

<?xml version="1.0" encoding="utf8"?> <LinearLayout xmlns:android= "http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent"> <TextView android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="@string/hello" /> </LinearLayout>

Universidad de Valladolid Tecnologa de Programacin

Departamento de Informtica

iX FL Hola, Mundo 12

Universidad de Valladolid Tecnologa de Programacin

Departamento de Informtica

iX FL Hola, Mundo 13

Consideraciones sobre el layout

La estructura del layout


La posicin de los elementos siempre es relativa

En general es ms cmodo utilizar el editor rico La columna de la izquierda contiene todos los elementos o Vistas que podemos insertar La columna de la derecha contiene el rbol de estructura del layout Podemos cambiar propiedades de una vista mediante un men contextual

En general las vistas se construyen combinando cajas apiladas vertical y horizontalmente Las medidas preferidas son dip (pixels independientes de la densidad) y sp (equivalente para texto) No deben aparecer explcitamente:
colores tipos de letra cadenas de caracteres

todos estos elementos aparecen en otros cheros de recursos

Universidad de Valladolid Tecnologa de Programacin

Departamento de Informtica

iX FL Hola, Mundo 14

Universidad de Valladolid Tecnologa de Programacin

Departamento de Informtica

iX FL Hola, Mundo 15

Creando un nuevo chero de recursos

Ficheros de recursos

Podemos crear cheros de recursos de varios tipos


Layout, colores, datos, mens,. . .

Podemos crear varios cheros para el mismo recurso Se activar uno de ellos en funcin de un conjunto de propiedades
Idioma, tamao o posicin de pantalla,. . .

Los cheros se almacenan en directorios diferentes Eclipse es capaz de ocuparse de los detalles

Universidad de Valladolid

Departamento de Informtica

iX FL

Universidad de Valladolid

Departamento de Informtica

iX FL

Tecnologa de Programacin

Hola, Mundo 16

El siguiente paso

Conseguir reacciones a las acciones del usuario Lanzar otra actividad Utilizar otros tipos de vista Ofrecer opciones de conguracin de la aplicacin Esto es: Un Hola, Mundo con pretensiones

Universidad de Valladolid

Departamento de Informtica

iX FL