¿Cómo se crean hermosas interfaces de usuario no estándar para aplicaciones de Android?

Desde mi perspectiva, tiene dos caminos para elegir: uno es mucho más avanzado que el otro. Creo que podrás adivinar cuál es cuál.

1. Crear una interfaz de usuario creativa a partir de la interfaz de usuario básica

Con este enfoque, debe familiarizarse con tantos componentes de la interfaz de usuario de Android como sea posible: la vista básica, el botón, la vista de texto, los grupos de diseño, CheckBox, etc.

Entonces necesita el conocimiento requerido que le permite diseñar estos componentes. Nunca lo sabrá todo, y la biblioteca de soporte continúa agregando componentes más innovadores que simplifican el proceso de diseño. Pero debe conocer los principios detrás de este enfoque: tome algo común -> vuelva a pelarlo para que coincida con su diseño.

Veamos el ejemplo oportuno, esta pantalla en particular:

Voy a desglosar cómo construiría este diseño, en lugar de la implementación exacta porque solo puedo adivinar lo que pienso. 🙂

  1. TextView estándar con una fuente personalizada y efectos de pintura personalizados que le dan ese brillo blanco.
  2. Usaría un Android ShapeDrawable personalizado como fondo de este contenedor. Esa forma es Rectángulo, con esquinas ligeramente redondeadas, un borde delgado, cuyo color es ligeramente menos transparente que el color de fondo.
  3. Usaría un widget SwitchCompat.
  4. Vistas de texto estándar alineadas en un diseño lineal utilizando la fuente predeterminada de Roboto.
  5. Construyo divisores usando una clase de Vista simple con un color como fondo. El divisor es probablemente `1dp` de alto y` match_parent` de ancho.
  6. Un AppCompatCheckbox estándar puede hacer que esto suceda porque podemos asignar texto a cualquier widget CheckBox.
  7. Finalmente, parece que un Spinner implementaría este aspecto y comportamiento.

Esta vista es hermosa y parece no estándar, pero le garantizo que puede construirla con piezas estándar rediseñadas para que coincidan con sus objetivos de diseño. Se trata de saber qué hay en su caja de herramientas y cómo aplicarlo a la situación dada.

Nunca reinventes la rueda. A no ser que…

2. Cree una interfaz de usuario creativa ampliando la vista

No todo en Timely se construye fácilmente con piezas existentes disponibles en el mercado. Veamos este pequeño y elegante elemento:

Sé que algunos desarrolladores discutirán conmigo sobre este punto, y es válido afirmar que técnicamente puedes construir esto con partes nativas. Y tal vez Timely tomó ese enfoque, pero supongamos que decidieron dibujarlo ellos mismos.

¿Cómo se hace esto? Cada widget listo para usar en Android se reduce a una vista. Y una vista se dibuja en un objeto Canvas. Tanto Google como Apple quitan un montón de estrés a los desarrolladores al proporcionar todos estos componentes de interfaz de usuario listos para usar.

Lo que sucede debajo es una serie compleja de funciones de cálculo de píxeles y dibujo sin procesar que realmente colocan los colores en la pantalla y reaccionan adecuadamente a la entrada táctil. View y sus subclases manejan estas responsabilidades y te ocultan la lógica de fusión de la cara nazi. (Haz clic si te atreves).

Entonces, ¿cómo crearía esta vista de escala de tiempo creciente? Lo llamaría GrowyTimeScaleyView y comenzaría extendiendo la clase View. A partir de ahí, se trata de anular `onDraw`, obtener los límites de altura / ancho de la vista y dibujar manualmente los pequeños ticks y números.

La clase también necesitaría aceptar cambios de usuarios externos con un método como, `setSelectedTime (mucho tiempo)`. `time` oscilaría entre` 0` y `86400000`, el número de milisegundos en un día.

Usaría este valor para determinar dónde ampliar los ticks y los números usando un poco de matemática de píxeles exponencial que crece a medida que se acerca el tiempo seleccionado y se reduce a un tamaño mínimo a medida que me alejo.

Aquí hay algunos tutoriales que lo ayudarán a comenzar a dibujar vistas personalizadas:

  • Dibujo personalizado | Desarrolladores de Android
  • Vistas personalizadas de Android: el método onDraw
  • Sabiduría local | Crear una implementación de vista personalizada en Android
  • Crear vistas personalizadas y compuestas en Android – Tutorial
  • Tutorial de vista personalizada de Android 2 – Atributos personalizados, dibujo, medición

Como habrás adivinado, la opción 2 es mucho más difícil y generalmente involucra matemática avanzada y mucha depuración. Dicho esto, la opción 2 probablemente resultará en una mejora del rendimiento sobre un enfoque que requiere que muchos componentes listos para usar trabajen juntos de una manera altamente compleja.


¡Gracias por leer! Si te ha resultado útil, ¡ vota y siéntete libre de seguirme para obtener más respuestas sobre Android y otras cosas divertidas!

Alcance, soy todo oídos: correo electrónico y twitter .

Para crear una interfaz de usuario hermosa para aplicaciones de Android, primero debe hacer un diseño simple de la interfaz de usuario

entonces te has abierto sobre la opción que tienes

Puede agregar elevación al botón y otros componentes

El concepto principal para hacerlo hermoso es agregar un diseño de material a

incluso puede usar muchas bibliotecas disponibles en github para la interfaz de usuario

Tienes que elegir una combinación de colores que brinde brillo a tu aplicación

puedes usar la paleta de colores para elegir colores para tu aplicación

Music Player – Aplicaciones de Android en Google Play

SÍ compruebe mi reproductor de música para Android, lo ayudará con la interfaz de usuario

ABRIRÁ tu MENTE como desarrollador

Haciéndolos simples.

Es muy fácil comenzar a pensar en las funciones X, Y, Z, A y B para una sola pantalla. La gente quiere usar cosas que sean intuitivas y fáciles. No lo compliques demasiado. Por ejemplo, ¿cuándo fue la última vez que usó Facebook / Twitter e intentó cambiar una configuración? 😉 buena suerte con eso

Si estás hablando de algo así, hay muchos proyectos que se venden en el mercado. Hay muchos paquetes de UI vendidos por empresas. Así que crea algo así por dinero. Lleva mucho tiempo. Pero vale la pena.

Verifica mi aplicación de Android en Play Store

Reproductor de música: reproductor de música Adfree para Android – Aplicaciones de Android en Google Play

Sí, simplemente puede extender la clase de padres predeterminada de los objetos de la interfaz de usuario y cambiarlos como desee.