Kivy: Desenvolvimento de GUI multiplataforma com Python

Treinador Online de Python para Iniciantes

Aprenda Python facilmente sem sobrecarga teórica. Resolva tarefas práticas com verificação automática e escreva código diretamente no navegador.

Start Course

Introdução

Kivy é um framework poderoso e de código aberto para criar interfaces gráficas e aplicativos multiplataforma com Python. Ele oferece suporte a Android, iOS, Windows, Linux e macOS, sendo uma excelente escolha para desenvolver aplicativos mobile e desktop com um único código base.

A biblioteca fornece ferramentas para construir interfaces adaptáveis, gerenciar entrada de teclado, mouse, toque e multitoque, além de incluir sua própria linguagem de marcação KV para separar a lógica da interface. O Kivy utiliza OpenGL para renderização, garantindo alta performance e animações suaves.

O que é Kivy e seus recursos

Principais vantagens do framework

O Kivy se destaca entre outras bibliotecas de criação de interfaces gráficas por várias características importantes. O framework é totalmente escrito em Python, usando Cython para componentes críticos, o que garante alta performance.

Os principais recursos incluem:

  • Suporte nativo a multitoque e gestos
  • Aceleração gráfica via OpenGL ES 2.0
  • >Redimensionamento automático da interface para diferentes resoluções de tela
  • Arquitetura modular com possibilidade de extensão
  • Suporte integrado a animações e efeitos

Arquitetura do framework

O Kivy é construído sobre uma arquitetura modular, onde cada componente pode ser substituído ou estendido. O núcleo do framework consiste em vários módulos principais: Clock para gerenciamento de tempo, Window para manipulação da janela do aplicativo, Factory para criação de objetos e Cache para otimização de performance.

Instalação e configuração

Instalação básica do Kivy

pip install kivy

Para desenvolvimento Android, você precisará da ferramenta adicional buildozer:

pip install buildozer

Instalação de dependências para diferentes plataformas

Windows

pip install kivy[base,media]

Linux (Ubuntu/Debian)

sudo apt-get install python3-kivy

macOS

brew install pkg-config sdl2 sdl2_image sdl2_ttf sdl2_mixer gstreamer
pip install kivy

Verificando a instalação

Após a instalação, você pode verificar se tudo funcionou com um teste simples:

import kivy
print(kivy.__version__)

Criando seu primeiro aplicativo

O aplicativo Kivy mais simples

from kivy.app import App
from kivy.uix.button import Button

class MyApp(App):
    def build(self):
        return Button(text="Clique em mim")

MyApp().run()

Ao executar este código, uma janela será aberta com um botão que ocupa toda a área da janela.

Estrutura de um aplicativo Kivy

Cada aplicativo em Kivy possui a seguinte estrutura básica:

  • App — a classe principal que inicia e gerencia o aplicativo
  • Widget — o elemento base da interface, do qual todos os componentes herdam
  • Layout — contêineres para organizar widgets (BoxLayout, GridLayout e outros)
  • Screen — telas individuais do aplicativo para navegação

Ciclo de vida do aplicativo

Um aplicativo Kivy passa por várias etapas:

  1. Inicialização da classe App
  2. Chamada do método build() para criar a interface
  3. Início do loop principal de eventos
  4. Processamento da entrada do usuário
  5. Finalização ao fechar o aplicativo

Componentes e widgets principais

Widgets básicos de interface do usuário

Label — exibindo texto

from kivy.uix.label import Label

label = Label(                    

Recommendations