Kivy Mira y Siente

Estoy tratando de crear una aplicación Kivy con un aspecto y estilo nítidos y definidos, pero la interfaz de usuario Kivy predeterminada no es exactamente lo que tenía en mente. ¿Hay alguna forma de crear un tema personalizado para darle estilo a tu aplicación Kivy?

introduzca la descripción de la imagen aquí

Esta aplicación aquí se llama Pithon y fue hecha de Kivy. He buscado en todas partes, pero no puedo encontrar nada sobre cómo el desarrollador logró una apariencia tan limpia. ¿Alguien tiene alguna idea?

introduzca la descripción de la imagen aquí

Un desarrollador de Kivy llamado Andrés Rodríguez lanzó un conjunto de widgets basados ​​en los principios de diseño de material de Google. Actualmente los estoy usando y seguramente me han salvado de mucho trabajo. Puedes encontrar KivyMD aquí . Hay algunos temas que también se basan en los mismos principios, pero aún no he probado ninguno de ellos es FlatKivy y el otro es material ui de Federico Curzel.

Algunas capturas de pantalla para kivyMD, flatkivy y kivy material ui respectivamente están aquí. KivyMD

FlatKivy

kivy material de la interfaz de usuario

Haga clic en los enlaces resaltados y encontrará mucha más información sobre los tres proyectos.

(Casi) todos los widgets tienen propiedades que se pueden usar para configurar aspectos de su estilo. Por ejemplo, con un botón puede cambiar el color de fondo, la imagen de fondo cuando se presiona o suelta, y el tamaño de la región del borde (se escala como en las imágenes de borde de CSS). Puede consultar la documentación para los detalles de un widget determinado.

Se podría lograr un tema como en la captura de pantalla que publicaste apagando las imágenes de fondo de los botones y simplemente usando colores sólidos, con tags de texto sin botones y el círculo que se dibuja directamente con una instrucción de canvas kivy o mediante un widget de imagen (junto con una imagen del círculo).

Me he dado cuenta de que mencionaste rellenar un comentario, pero no estoy seguro de qué quieres decir con eso: ¿te refieres a la distancia entre los botones? Se pueden colocar en un objeto GridLayout que tenga una propiedad de relleno que controle esto, por lo que puede configurarlo como desee.

Reconozco que estás haciendo una pregunta más general que ‘¿cómo lo hace esta captura de pantalla?’, Pero el punto clave es que casi todo es personalizable y no se necesitan muchos cambios para pasar del tema predeterminado a tu imagen. .

Edición: una característica útil que ayuda a este tipo de personalización es que puede usar el lenguaje kv para anular los estilos de las clases de widgets con mucha facilidad, por lo que no necesita cambiar manualmente cada botón, etc.