Pular para o conteúdo
Sem resultados
  • Início
  • Vídeos
  • Equipamentos
  • Livros
  • Reviews
  • Stories
  • Início
  • Vídeos
  • Equipamentos
  • Livros
  • Reviews
  • Stories
Home Conteúdo Tela de Login com Flutter

Tela de Login com Flutter

  • ConteúdoDevDicasMobileTutorial
  • 15 de outubro de 2023

Veja em apenas 3 minutos como é super simples criar uma bela tela de login no Flutter.

Neste tutorial, você aprenderá a criar uma tela de login básica no Flutter. A tela de login terá os seguintes elementos:

  • Um campo de texto para o nome de usuário
  • Um campo de texto para a senha
  • Um botão para enviar o login
  • Um botão para criar uma conta

Caso ainda não tenha o Flutter instalado confira nesse link como realizar a instalação na sua máquina.

Abaixo segue o link em rápido para você conseguir ver como foi feito.

Para iniciarmos um novo projeto em Flutter precisamos digitar o seguinte comando em nosso terminal:

flutter create login_page

Com o projeto já iniciado, limpamos todo o código de exemplo no arquivo main.dart que se encontra na pasta /lib e o deixamos da seguinte forma:

import 'package:flutter/material.dart';

import 'package:login_page/login_page.dart';

void main() {
  runApp(const MyApp());
}

class MyApp extends StatelessWidget {
  const MyApp({super.key});

  // This widget is the root of your application.
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      debugShowCheckedModeBanner: false,
      title: 'Login Page',
      theme: ThemeData(
        colorScheme: ColorScheme.fromSeed(seedColor: Colors.deepPurple),
        useMaterial3: true,
      ),
      home: const LoginPage(),
    );
  }
}

Agora vamos criar nosso widget LoginPage que será de fato a nossa tela de login.

import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';

class LoginPage extends StatelessWidget {
  const LoginPage({super.key});

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      extendBodyBehindAppBar: true,
      appBar: AppBar(
        title: const Image(
          image: NetworkImage(
              "http://ninelabs-wordpress-1aba45-177-136-235-199.traefik.me/wp-content/uploads/2022/05/Group-1.png"),
          width: 140,
        ),
        elevation: 0,
        backgroundColor: Colors.transparent,
      ),
      body: Container(
        width: MediaQuery.of(context).size.width,
        padding: const EdgeInsets.all(27),
        decoration: const BoxDecoration(
          gradient: LinearGradient(
            colors: [
              Colors.deepPurple,
              Colors.pinkAccent,
            ],
          ),
        ),
        child: Column(
          mainAxisAlignment: MainAxisAlignment.center,
          children: [
            const SizedBox(height: 30),
            const Text(
              "Digite os dados de acesso nos campos abaixo.",
              style: TextStyle(
                color: Colors.white,
              ),
            ),
            const SizedBox(height: 30),
            const CupertinoTextField(
              cursorColor: Colors.pinkAccent,
              padding: EdgeInsets.all(15),
              placeholder: "Digite o seu e-mail",
              placeholderStyle: TextStyle(color: Colors.white70, fontSize: 14),
              style: TextStyle(color: Colors.white, fontSize: 14),
              decoration: BoxDecoration(
                  color: Colors.black12,
                  borderRadius: BorderRadius.all(
                    Radius.circular(7),
                  )),
            ),
            const SizedBox(height: 5),
            const CupertinoTextField(
              padding: EdgeInsets.all(15),
              cursorColor: Colors.pinkAccent,
              placeholder: "Digite sua senha",
              obscureText: true,
              placeholderStyle: TextStyle(color: Colors.white70, fontSize: 14),
              style: TextStyle(color: Colors.white, fontSize: 14),
              decoration: BoxDecoration(
                  color: Colors.black12,
                  borderRadius: BorderRadius.all(
                    Radius.circular(7),
                  )),
            ),
            const SizedBox(height: 30),
            SizedBox(
              width: double.infinity,
              child: CupertinoButton(
                padding: const EdgeInsets.all(17),
                color: Colors.greenAccent,
                child: const Text(
                  "Acessar",
                  style: TextStyle(
                      color: Colors.black45,
                      fontSize: 14,
                      fontWeight: FontWeight.w600),
                ),
                onPressed: () {},
              ),
            ),
            const SizedBox(height: 7),
            Container(
              width: double.infinity,
              decoration: BoxDecoration(
                  border: Border.all(color: Colors.white70, width: 0.8),
                  borderRadius: BorderRadius.circular(7)),
              child: CupertinoButton(
                child: const Text(
                  "Crie sua conta",
                  style: TextStyle(
                      color: Colors.white,
                      fontSize: 14,
                      fontWeight: FontWeight.w600),
                ),
                onPressed: () {},
              ),
            ),
          ],
        ),
      ),
    );
  }
}

Simples assim! Espero que tenham gostado e que sirva de incentivo para você começar a criar as suas próprias telas!

Confira também nosso outro artigo ‘Tela de Login com HTML + CSS‘.

Te desejo muito sucesso!

Tags
# dart# flutter# Frontend# Login# Tela de Login# Tutorial
Post anterior Gerenciamento de tempo: como usar bem o seu tempo e ser mais produtivo
Próximo Post Macbook Pro: A Escolha Inteligente para Programadores Profissionais

Deixe um comentárioCancelar resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

Últimas Postagens

O Profissional de IA em 2026: As 5 Skills que Valem Ouro

29 de janeiro de 2026

Descubra Como Instalar o Moltbot em Sua VPS – Acesse Agora e Transforme sua Automação!

29 de janeiro de 2026

Além do Prompt: As 7 Competências Críticas de IA para 2026

28 de janeiro de 2026

N8N + Lovable: A Stack de Automação que Você Não Pode Ignorar em 2026

27 de janeiro de 2026

Descubra Como Reativar o Nó ‘Execute Command’ no N8N 2.0 e Otimize Seus Workflows!

27 de janeiro de 2026

Posts relacionados

O Profissional de IA em 2026: As 5 Skills que Valem Ouro

  • 29 de janeiro de 2026

Descubra Como Instalar o Moltbot em Sua VPS – Acesse Agora e Transforme sua Automação!

  • 29 de janeiro de 2026

Além do Prompt: As 7 Competências Críticas de IA para 2026

  • 28 de janeiro de 2026

Mais lidos

Temas-claros-vs-code
6 temas claros incríveis para VSCode
Como Criar um Agente de IA para WhatsApp Usando N8n e Evolution API
Tela de Login com HTML + CSS
Comparativo entre Frameworks Mobile em 2023

Copyright © 2026 - Todos os direitos reservados Ninelabs

  • Vídeos
  • Termos de Uso
  • Política Privacidade