Diseño Android: Tipografías personalizadas

android

Existen dos motivos que pueden llevarnos a tener que definir explícitamente el tipo de letra a utilizar en nuestra aplicación:

  • Queremos utilizar un tipo específico como parte del diseño de la aplicación.
  • Evitar que en caso de que el usuario cambie el tipo de letra por omisión de su dispositivo Android el diseño de nuestra aplicación pueda quedar “afeado”. Esta funcionalidad no está incluída originalmente en Android pero es proporcionada por algunos fabricantes como Samsung y algunas apps en dispositivos rooteados.

El atributo android:typeface de TextView sólo se aplica a las familias de tipos de letras por omisión del sistema por lo que no existe una forma directa de utilizar una letra personalizada incluída en la aplicación simplemente desde XML. En este artículo veremos algunas de las opciones más habituales para utilizar tipos de letras TrueType personalizados.

Como ejemplo, utilizaremos Roboto diseñada por Google especialmente para Android y que es el tipo de letra por omisión a partir de Android 4. Nuestra app de ejemplo mostrará siempre este tipo de letra independientemente de la versión de Android y su configuración.

Seguir leyendo

Persistencia en BD con Spring Data JPA (III): Auditoría

Tercera parte del artículo dedicado a la persistencia en BD con Spring Data JPA:

  1. Primeros pasos
  2. Repositorios personalizados
  3. Auditoría

Spring Data JPA proporciona un mecanismo sencillo y elegante para dotar de un sistema automatico de auditoria
a las entidades. Los campos de auditoría contemplados son la fecha de creación, fecha de última modificación, el usuario creador y el último que modificó la entidad. Vamos a implementar este mecanismo en nuestra demo paso a paso.

Seguir leyendo

Persistencia en BD con Spring Data JPA (II): Repositorios personalizados

Segunda parte del artículo dedicado a la persistencia en BD con Spring Data JPA:

  1. Primeros pasos
  2. Repositorios personalizados
  3. Auditoría

En el caso de que sea necesario acceder directamente al EntityManager y codificar operaciones con él podemos implementar nuestro propio repositorio conservando todas funcionalidades proporcionadas por los repositorios de forma estándar. Vamos a implementar el método del proyecto original que eliminaba los objetos de la entidad almacenados en la caché. En primer lugar, se crea una nueva interfaz con la definición del método. Por defecto el nombre de esta interfaz debe tener el sufijo “Custom”.

Seguir leyendo

Tareas programadas en Spring

logo spring

Es posible que al desarrollar una aplicación la mejor solución para ciertas funcionalidades sea la implementación de tareas programables, esto es, métodos que se ejecuten periódicamente en momentos determinados o bien cada cierto periodo de tiempo. El caso más típico consiste en la revisión de la base de datos para la generación de informes de seguimiento, el envío de notificaciones, realizar tareas de sicronización con otros sistemas, etc. Asimismo, estas tareas suelen formar parte de la propia aplicación ya que así se pueden utilizar los servicios, capa DAO, etc de la misma.

En Java se suele utilizar Quartz, sin embargo si utilizamos Spring y la casuística es sencilla no tenemos que recurrir a ninguna librería de terceros ya que con Spring 3 es sencillo definir ejecuciones períódicas de un método de un bean y es precisamente lo que se verá de forma práctica en este artículo.

Seguir leyendo

Diseño Android: Popup Menu


VERSIONES

  1. 08/03/2014 (Primera publicación)
  2. 17/05/2014:
    • Añadido color de fuente

android

El primer artículo de la serie “Diseño Android” de 2014 está dedicado al widget PopupMenu que permite mostrar un menú contextual en un popup ubicado junto al elemento que lo despliega. Este widget fue introducido en HoneyComb (API 11) pero puede ser utilizado en versiones anteriores ya que se encuentra incluido en la libreria de compatibilidad v7.

La siguiente captura de la app oficial de Youtube muestra un popup menu como el que se va a utilizar en el presente artículo.

youtube-popup menu

Entorno de pruebas:

Requisitos: Conocimientos básicos de Android SDK. Se utilizará Eclipse como IDE.

Seguir leyendo

Persistencia en BD con Spring Data JPA (I): Primeros pasos


VERSIONES

  1. 08/02/2014 (Primera publicación)
  2. 02/03/2014:
    • Añadido ejemplo de UPDATE
    • Actualización de librerias de Spring
  3. 01/11/2014:
    • Ampliación de la sección de consultas
    • Configuración de caché
    • División del artículo original en dos partes y creación de una tercera
    • Diagrama de clases

logo spring

Nota: Este tutorial es una continuación de Persistencia en BD con Spring: Integrando JPA, c3p0, Hibernate y EHCache. El objetivo es reutilizar el mismo proyecto de ejemplo e incluir Spring Data JPA.

Spring Data es el nombre de un módulo de Spring que a su vez engloba un gran número de sub-módulos cuyo objetivo es facilitar el acceso y explotación de datos en aplicaciones basadas en Spring, obteniéndose estos datos de fuentes tan dispares como servicios RestFUL, bases de datos relacionales a través de JPA, o bases de datos NoSQL como MongoDB o Neo4J, entre otras. Este artículo expondrá el uso básico del módulo para JPA utilizándose como implementación Hibernate y se divide en tres partes:

  1. Primeros pasos
  2. Repositorios personalizados
  3. Auditoría

Nota:A partir de la versión 1.7.0.RELEASE Spring Data JPA requiere Spring 4. En el artículo se utilizará Spring 3 y Spring Data JPA 1.6.4.RELEASE ya que Spring 3 se sigue utilizando ampliamente incluso en proyectos de nueva creación.

Seguir leyendo

Seguir

Recibe cada nueva publicación en tu buzón de correo electrónico.

Únete a otros 47 seguidores