Android Studio soporta una variedad de atributos XML en el espacio de nombres reservado tools, el cual provee ciertas caracteristicas muy utiles al momento de diseñar layouts.

Es bastante sencillo usar estos atributos, solo tenemos que agregar xmlns:tools=”http://schemas.android.com/tools" en la raiz del fichero XML donde queremos utilizarlos.

Atributos para manejar errores

Los siguientes atributos ayudan a suprimir los mensajes de advertencia de Lint (las advertencias o warnings usualmente se muestran con un color amarillo en Android Studio y aunque su objetivo es ayudarnos a mantener buenas practicas de programación, esas advertencias en ocasiones pueden volverse inncecesarias).

tools:ignore

Este atributo es basicamente el equivalente de la…


Mientras desarrollada mi app Productivity Timer hubo un momento en el que tuve que usar dos RecyclerViews juntos(uno debajo del otro) pero al hacer scrolling entre los RecyclerViews no obtuve el resultado esperado.

El scrolling funcionaba de manera extraña, yo esperaba un resultado mas parecido al de la app Google Keep(donde estan dos RecyclerViews uno debajo del otro y el scrolling funciona de forma más natural)

Luego de investigar sobre el asunto encontre una solución bastante sencilla, basicamente solo necesitada pasarle como valor false al metodo setNestedScrollingEnabled(en el caso de Kotlin se le puede asignar el valor como si fuera…


Actualmente hay disponibles muchos tutoriales sobre como implementar splash screen en android, pero la mayoria de ellos consisten en una Activity que se ejecuta al abrir la aplicación, y esa solución no me parece la más apropiada porque obliga a los usuarios a esperar durante 2–3 segundos y dá la impresión de que la app esta congelada. La mejor solución que he encontrado a esto no requiere crear la típica SplashActivity y muestra la splash activity mientras se carga la actividad principal.

Primero tenemos que diseñar el layout para la splash screen dentro de la carpeta drawable.

Luego definimos…


En Kotlin, todo es un objeto en el sentido de que podemos llamar funciones y acceder a propiedades en cualquier variable, de esta forma aunque los tipos de datos basicos siguen siendo los mismos que en Java en Kotlin se manejan como objetos y no como tipos de datos primitivos. Algunos de los tipos de datos mas comunes son: Byte, Short, Int, Long, Double, Float, String y Char.

Para crear una variable mutable(cuyo valor puede cambiar) utilizamos la palabra reservada var al momento de declarar la variable y para crear variables inmutables(cuyo valor puede ser asignado solo una vez) se…


Es un nuevo widget que extiende de la clase ViewGroup, introducido por Google en el Google I/O 2015 dentro de la libreria de diseño de soporte con el objetivo de mejorar y darle un estilo Material Design al EditText modificando la forma en como se visualiza el atributo <hint> con una pequeña animación.

Importar la libreria de soporte

Para usar TextInputLayout en tu proyecto primero debes importar dos librerias. La primera es appcompat-v7, la cual se asegura de que el estilo Material es compatible con versiones anteriores. La segunda es la libreria de diseño de soporte.

En el archivo build.gradle…

Sneyder Angulo

Freelancer Android Apps Developer

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store