El gran libro de Android. Jesus Tomás Gironés

El gran libro de Android - Jesus Tomás Gironés


Скачать книгу
Mis Lugares Java ó Mis Lugares Kotlin

      Package name: com.example.mislugares

      Language: Java ó Kotlin

      Minimum API level: API 19 Android 4.4 (KitKat)

       NOTA: Deja el resto de los parámetros con su valor por defecto.

      2. Pulsa en File > New > New Module. Selecciona Java Library y pulsa Next.

      3. Introduce en Library name: MisLugares, como Java pakage name: com.example.mislugares y en Java class name: Lugar. Pulsa el botón Finish. Se creará un nuevo módulo Java dentro de tu proyecto Android.

      4. Para Kotlin, en el explorador de proyecto busca la clase Java y, con el botón derecho, selecciona Convert Java File to Kotlin File.

      5. Reemplaza el código de la clase Lugar por el siguiente:

Illustration Illustration

      Para Kotlin en el constructor principal indicamos directamente los atributos de la clase y en algunos casos los valores por defecto. Los getters y setters son creados automáticamente. Además, al haber indicado data class se crean otras funciones como toString(). Por lo tanto, podrás saltarte los siguientes dos puntos.

      6. Solo para Java, crea los métodos getters y setters para acceder a todos los atributos de la clase. Solo tienes que pulsar con el botón derecho y seleccionar la opción Generate… > Getter and Setter y selecciona todos los atributos mientras mantienes pulsada la tecla Ctrl.

      7. Solo para Java, pulsa con el botón derecho sobre el código y selecciona la opción Generate… > toString(). Selecciona todos los atributos y pulsa OK. Se añadirá un método similar a:

Illustration

       NOTA: El significado de @Override se explica más adelante.

      8. Dentro del explorador del módulo MisLugares / java / com.example.mislugares pulsa con el botón derecho y selecciona New > Java Class o Kotlin File/Class.

      9. Introduce en el campo Name: GeoPunto y pulsa Ok. Reemplaza el código por el siguiente (dejando la línea del package):

Illustration Illustration

      El objeto SIN_POSICION será utilizado cuando se quiera indicar que un lugar no tiene posición asignada. Observa que es un objeto de tipo estático. En Java se indica con static y en Kotlin con companion object. Esto significa que solo va a haber una instancia de este objeto creada desde el principio. Para acceder a ella usaremos GeoPunto.SIN_POSICION.

      10. Solo para Java, crea en esta clase los métodos getters y setters para acceder a los dos atributos. Igual que antes, pulsa con el botón derecho y seleccionar la opción Generate… > Getter and Setter. Realiza la misma operación para equals() and hasCode().

      11. Para Java y Kotlin, crea una nueva clase Java con nombre: Principal. Android Studio no permite que la clase principal esté en Kotlin.

      12. Reemplaza el código por el mostrado (dejando la línea del package):

Illustration

      La clase Principal es algo atípica: no tiene atributos ni constructor, únicamente el método main. Cuando en un proyecto existe una clase que tiene un método con este perfil, es el que se llama para comenzar la ejecución. Como parámetros, este método recibe un array de Strings. Esta información tiene interés cuando el programa se ejecuta desde la línea de comandos con parámetros.

      13. Pulsa en el botón desplegable a la derecha del botón Run Illustration. Selecciona Edit Configurations...

      14. En la nueva ventana, haz clic en el signo + de la esquina superior izquierda y selecciona Application. Aparecerá una nueva configuración de aplicación. Selecciona en Name: mislugares, en Main class: com.example.mislugares.Principal y en Use classpath of module: MisLugares. Pulsa en OK.

      15. Pulsa el botón Ejecución Illustration y verifica que el resultado que aparece en la ventana de Run es similar a:

      “C\Program ...

      Lugar {nombre=Escuela Politécnica Superior de Gandía,

      direccion=C/ Paranimf, 1 46730 Gandia (SPAIN),

      posicion=longitud:-0.166093, latitud:38.995656, foto=null,

      telefono=962849300, url=http://www.epsg.upv.es,

      comentario=Uno de los mejores lugares para formarse.,

      fecha=1392332854758, valoracion=3.0}

      Process finished with exit code 0

      Illustration Enlaces de interés: Sobrecarga:

       http://www.androidcurso.com/index.php/30