Crie um aplicativo para Android de prática de layout com o Flutter — Linhas principais, colunas e padronagem | Flutter Sensei | Skillshare

Velocidade de reprodução


1.0x


  • 0.5x
  • 0.75x
  • 1x (Normal)
  • 1.25x
  • 1.5x
  • 1.75x
  • 2x

Crie um aplicativo para Android de prática de layout com o Flutter — Linhas principais, colunas e padronagem

teacher avatar Flutter Sensei, Teaching Flutter from Scratch

Assista a este curso e milhares de outros

Tenha acesso ilimitado a todos os cursos
Oferecidos por líderes do setor e profissionais do mercado
Os temas incluem ilustração, design, fotografia e muito mais

Assista a este curso e milhares de outros

Tenha acesso ilimitado a todos os cursos
Oferecidos por líderes do setor e profissionais do mercado
Os temas incluem ilustração, design, fotografia e muito mais

Aulas neste curso

    • 1.

      O que você vai aprender e o que você vai construir

      1:51

    • 2.

      Criando o projeto de prática do layout

      4:09

    • 3.

      Como criar a tela inicial para o layout

      3:42

    • 4.

      Entendendo o preenchimento em widgets

      2:59

    • 5.

      Entendendo linhas e colunas

      3:16

    • 6.

      Adicionando vários itens em uma linha usando o recurso expandido

      2:41

    • 7.

      Substituindo texto por widget de cartão

      5:39

    • 8.

      Making The Card Modular

      5:04

    • 9.

      Usando o cartão de painel modular

      4:18

    • 10.

      Adicionando a área de conteúdo e a barra de navegação inferior

      8:29

    • 11.

      Encerramento e projeto do curso

      2:04

  • --
  • Nível iniciante
  • Nível intermediário
  • Nível avançado
  • Todos os níveis

Gerado pela comunidade

O nível é determinado pela opinião da maioria dos estudantes que avaliaram este curso. Mostramos a recomendação do professor até que sejam coletadas as respostas de pelo menos 5 estudantes.

15

Estudantes

1

Projeto

Sobre este curso

Neste curso para iniciantes, você vai criar seu terceiro aplicativo do Flutter, um belo projeto de prática de layout que fortalece sua compreensão de linhas, colunas, preenchimento e design modular de UI.

Você vai aprender a:

  • Organize widgets usando linhas, colunas e preenchimento para criar layouts limpos e responsivos

  • Crie cartões personalizados e widgets reutilizáveis para manter seu código modular e escalável.

  • Aplique o SizedBox e o EdgeInsets para dominar o espaçamento e o alinhamento

  • Organize a estrutura do seu aplicativo para ter clareza e reutilização — como um desenvolvedor profissional do Flutter

Ao final deste curso, você terá criado um aplicativo de prática de layout completo — uma interface de usuário moderna e estruturada criada do zero — e, mais importante, terá aprendido a pensar no sistema de layout do Flutter.

Este curso é perfeito para iniciantes que concluíram os projetos anteriores do Flutter (como o aplicativo Hello World Toggle e o Counter) e agora estão prontos para criar aplicativos mais visualmente atraentes e bem estruturados.

Se você é novo no Flutter, comece com meu primeiro curso — Crie seu primeiro aplicativo do Flutter (Hello World Toggle) — e depois siga em frente para aproveitar ao máximo seu caminho de aprendizagem.

Sem teoria complexa, sem confusão — apenas prática clara e prática que aumenta sua confiança e criatividade no design de UI do Flutter.

Traga sua curiosidade, seu laptop… e volte para o dojo.
Vamos começar a criar lindos layouts, um widget de cada vez.

Conheça seu professor

Teacher Profile Image

Flutter Sensei

Teaching Flutter from Scratch

Professor

Hey there! I'm Flutter Sensei -- I teach Flutter step-by-step with practical projects that make learning easy and fun for beginners.

My goal is to help you build real apps, understand every widget, and gain the confidence to create on your own.
Whether you're just starting out or brushing up your skills, welcome to your Flutter dojo.

Visualizar o perfil completo

Level: Beginner

Nota do curso

As expectativas foram atingidas?
    Superou!
  • 0%
  • Sim
  • 0%
  • Um pouco
  • 0%
  • Não
  • 0%

Por que fazer parte da Skillshare?

Faça cursos premiados Skillshare Original

Cada curso possui aulas curtas e projetos práticos

Sua assinatura apoia os professores da Skillshare

Aprenda em qualquer lugar

Faça cursos em qualquer lugar com o aplicativo da Skillshare. Assista no avião, no metrô ou em qualquer lugar que funcione melhor para você, por streaming ou download.

Transcrições

1. O que você vai aprender e o que você vai construir: Oi, aí. Eu sou Flutter Sense. E nesta aula, vamos usar algo super divertido e incrivelmente útil, um layout completo de flutter do Sem configuração complicada, sem teoria avassaladora, apenas etapas práticas claras que farão você se apaixonar pela criação de belas interfaces Nesta aula, você aprenderá como configurar seu projeto mais plano da maneira certa, como usar preenchimento, linhas e colunas para estruturar seu layout como um profissional, como usar o expandido para um como usar o expandido para design responsivo que se ajusta Como criar widgets modulares reutilizáveis, como um painel c, como adicionar uma área de conteúdo na barra de navegação inferior para dar ao layout uma sensação real Por fim, como transformar toda a interface do usuário em um adaptador para eles. Ele muda de cor dinamicamente com um único galho. Ao final desta aula, você terá construído totalmente um layout de painel de flutter totalmente funcional Você pode personalizar para qualquer portfólio de ideias painéis, painéis de administração, ferramentas pessoais, tudo o que quiser Seu projeto de classe será criar sua própria versão desse layout, escolher seu próprio tema de cores, substituir o ícone e o texto para torná-lo único. Compartilhe uma captura de tela ou gravação de tela do seu painel final na seção do projeto da turma Não se preocupe se você for iniciante. Vou guiá-lo passo a passo, como um sensor real deveria. Pegue seu codificador, estique os dedos. Vamos construir algo lindo juntos. Nos vemos na primeira aula. O que você está esperando? Vamos começar. 2. Como criar o projeto de prática do layout: Tudo bem. Vamos começar. A primeira coisa que precisamos fazer é criar um novo projeto de vibração. Vamos abrir nosso terminal e navegar até a pasta em que você deseja criar seu projeto. Vou navegar até minha área de trabalho e, dentro dela, tenho projetos de vibração Dentro disso, você pode criar seu projeto agora. Flutter, criar, planejar, praticar. Isso gerará um novo projeto de inundação para nós. Em seguida, vamos abrir o projeto no código VS digitando CD, Layout Practice code dot Agora que está aberto, vamos fechar o terminal. Agora, no código VS, vamos para a pasta lip e, em seguida, abriremos o dardo principal de pontos Você verá vários códigos padrão lá dentro. Vamos limpar tudo e começar do zero. Agradável. Agora temos uma tela limpa. Vamos configurar a estrutura básica. Começaremos com import, package, flutter, material dot Então vamos dizer vazio, principal. Então, podemos dizer run, const, layout Practice. Em seguida, criaremos nossa aula prática de layout. Então, dizemos que classe, prática de layout, estende o widget sem estado E dentro disso, vamos dizer const, prática de layout Então vamos dizer chave de super dardo. Vamos todos escrever a compilação. Vou me livrar de todas as coisas que tenho dentro disso. Então, podemos devolver o material App. Vamos guardar isso. Tudo bem, agora que temos nossa estrutura básica, vamos torná-la mais completa adicionando um título, desativando o banner de depuração e definindo o tema e a tela inicial Para isso, precisamos entrar no aplicativo de materiais, e você pode ver que eu digitei aqui. Isso vai ser L. Isso é prática de layout. Certifique-se de que seja o mesmo nome desse. Sim, agora isso é perfeito. Agora podemos dizer título e definir o título para a prática de layout. Em seguida, podemos definir o banner de depuração para quedas. Então, podemos usar um tema. Eu vou dizer que são dados. Dentro disso, diremos que use o material três verdadeiro, então podemos dizer que as sementes do esquema de cores da semente adicionam isso às cores TO. Vamos guardar isso. Depois disso, vamos configurar uma tela inicial. Diga home, diga const, então podemos dizer layout da tela inicial E lá vamos nós. Configuramos nossa base flood wrap, adicionamos um tema e declaramos a tela inicial do layout, que será o cerne da prática do layout Na próxima lição, criaremos essa tela inicial passo a passo. 3. Como criar a tela inicial para layout: Tudo bem Agora que configuramos a base do nosso projeto, é hora de criar nossa tela inicial. Agora, em vez de escrever tudo dentro do dot dart principal, vamos criar a tela inicial em um arquivo separado Por quê? Porque isso nos ajuda a manter nosso código limpo, organizado e fácil de manter, o que é um hábito muito bom à medida que seu projeto cresce. Vamos fazer isso passo a passo. Dentro da pasta lip aqui, vamos criar uma pasta chamada screens. E dentro dessa pasta de tela, você criará um arquivo chamado layout underscore home, Underscore screen Agora que temos nosso arquivo, vamos escrever um código. A primeira coisa que precisamos fazer é importar a biblioteca de materiais flutter Digamos que pacote de importação, vibração, ponto de material escuro Não precisamos escrever a função principal ou chamar o Runap aqui novamente. Já fizemos isso no arquivo principal de pontos escuros, e isso é tudo de que precisamos. Aqui, definiremos apenas a classe da tela inicial do layout. Para isso, diremos aula e você pode segurar a barra de controle e espaço e ver o tema da classe aparecer aqui. Agora você pode dizer aqui extends stateless, que dentro disso, vamos dizer CST, layout home screen, então podemos dizer super dot K. Aqui vamos sobrescrever o método build. Vamos nos livrar dessas coisas e depois devolveremos um andaime Vamos guardar isso. Veja como usamos o andaime diretamente Isso porque o aplicativo de materiais já está incluído no arquivo de dardo principal Não precisamos ligar para o aplicativo de material duas vezes. O andaime aqui age como o corpo da tela, enquanto o aplicativo de material no dardo principal é o recipiente que o segura Em seguida, vamos importar essa tela em nosso arquivo principal de dardos de pontos para que o swiggi vermelho aqui desapareça Para fazer isso, você pode ir para o arquivo dot Tart principal e aqui você pode dizer importação, pode dizer pacote, e você pode ver o nome do pacote aqui é prática de layout, e aqui temos telas, e aqui temos o arquivo dot Tt da tela inicial do layout Aqui você verá que o sublinhado vermelho sumiu. Como já devolvemos o andaime, agora podemos executar esse aplicativo e testá-lo Vou executar isso como um aplicativo do Windows, mas você pode usar a plataforma que preferir. Android, IUS, web ou desktop. Vamos seguir em frente e executar isso. Vou escolher o Windows, e aí está uma bela tela em branco limpa. Deixe-me alinhar isso ao lado do nosso editor de código para que possamos entender isso facilmente Você pode ver o layout e o código. Agora vou esconder isso e vamos fechar isso. Está vazio porque não adicionamos nada dentro desse andaime, mas não se preocupe É exatamente isso que vamos desenvolver nas próximas aulas. Na próxima lição, começaremos a estruturar o layout dentro da tela inicial e a dar vida a ele. 4. Entendendo o preenchimento em widgets: Tudo bem. Agora que nosso aplicativo está instalado e funcionando, comece a adicionar um pouco de estrutura a ele introduzindo um aplicativo. Então, vamos para a tela inicial do layout e, em sien scam food, aqui, vamos adicionar um aplicativo Então, vamos dizer aplicativo aplicativo e, aqui, adicionaremos o título e chamaremos o título de bate-papo por texto, e chamaremos isso de prática de layout. E então vamos adicionar uma cor de fundo. Eu vou dizer esquema de cores ponto a ponto da equipe, ponto primário. Em seguida, adicionaremos a cor do primeiro plano como esquema de cores de pontos, ponto, no Vamos guardar isso. Você deve ver a barra de aplicativos aqui. Muito simples. Agora é hora de trabalhar no corpo do nosso layout. Mas antes de escrevermos mais código, quero que você dê uma olhada nessa imagem. Quando adicionamos preenchimento, o que acontece é isso Seu conteúdo se move para dentro, criando espaço extra ao redor dele, mas ainda dentro do elemento Pense nisso como se seu conteúdo sentado confortavelmente dentro de uma almofada macia Vamos entender isso com um exemplo simples. Vamos voltar ao nosso código. Agora, se eu escrever o corpo , vamos adicionar um texto que chamaremos isso de hello world. E vamos salvar isso. Você notará que o texto gruda diretamente na borda da tela. Isso não é muito bonito, certo? Mas vamos corrigir isso. Não precisamos excluir o widget de texto. Em vez disso, podemos simplesmente clicar com o botão direito do mouse, clicar em Refatorar e escolher embrulhar com preenchimento. Está vendo isso? Nosso widget de texto agora está encapsulado dentro do widget de preenchimento. A linha aqui, com todas as bordas inseridas , adiciona preenchimento igual em todos os lados, superior, inferior, esquerdo e direito Agora vamos mudar isso para 20. Agora é seguro. E, digamos que nesta pré-visualização, o texto se desloca para dentro , deixando um espaço bem equilibrado ao redor É exatamente assim que o preenchimento funciona. Ele não move o recipiente para fora, ele empurra o conteúdo para dentro, fazendo com que tudo pareça mais estruturado Na próxima lição, exploraremos linhas e colunas e veremos como estruturar vários widgets juntos Mas, por enquanto, basta brincar com os valores de preenchimento e se familiarizar com esse conceito Você o usará muito no froterayout mais tarde. 5. Entendendo linhas e colunas: Tudo bem. Agora que sabemos como o preenchimento funciona, vamos dar um passo adiante e entender as linhas e colunas no flutter Antes de tocarmos no código, quero que você veja esta imagem. Aqui podemos ver que temos três cartas colocadas lado a lado. Isso porque eles estão dentro de uma fileira e Row coloca seus filhos horizontalmente um ao lado Mas observe a carta inferior. Está abaixo da fileira. Isso acontece porque a linha com suas três cartas verticais na parte inferior do cartão é enrolada uma coluna e a coluna coloca seus filhos na vertical, um abaixo do outro Esse é basicamente o superpoder de linhas e colunas em um plano Lembre-se desse layout horizontal de linhas , layout vertical de colunas. Vamos testar isso em código. Neste momento, seu corpo se parece com isso. Temos um preenchimento, e então você tem uma criança e depois um widget de texto Vamos colocar o widget de texto em uma coluna. Clique com o botão direito no texto e clique em refatorar Em seguida, você verá o embrulho com a coluna e basta clicar nele. Isso nos dá filhos da coluna secundária e, em seguida, há o widget de texto Agora, se adicionarmos mais widgets dentro dos filhos, eles aparecerão um abaixo do outro É assim que a coluna funciona. Mas para esse texto em particular, eu realmente queria definir em uma linha, para poder colocar outros elementos ao lado dele mais tarde. Vamos refatorar o texto e envolvê-lo com uma corda. Aqui, vou clicar com o botão direito do mouse em refatorar e, em seguida, dizer embrulhar com corda Agora, como está dentro da linha, qualquer outra coisa que adicionarmos aqui, nos sentaremos ao lado do texto horizontalmente Vamos fazer com que o texto pareça um pouco mais bonito, como um título adequado Então, se eu disser isso, você verá que nenhuma mudança acontece aqui. Então, vamos seguir em frente e estilizar isso. Aqui você pode dizer estilo de vírgula. Então eu vou dizer têxtil, peso da fonte S. Eu disse, peso da fonte, aquela tigela. Vou guardar isso. Depois disso, vamos salvar o tamanho da fonte. Vou definir isso para 16. Então você pode dizer que cor é cor do preto, e isso é economizar. Agora você pode ver que o texto está negrito e é assim que parece. Agora, eu acho que isso é muito ousado. Vou mudar isso para cerca de W 500. Isso vai torná-lo um pouco mais leve. Agora você pode ver que o texto realmente aparece em negrito e está pronto para mais textos para juntá-lo Na próxima lição, adicionaremos outra linha abaixo desta e, dentro dela, colaremos vários cartões para criar o layout passo a passo. Linhas e colunas são como o esqueleto da sua interface de usuário. Depois de entender esses dois, você pode moldar sua tela da maneira que quiser. 6. Adicionando vários itens em uma linha usando expandido: Tudo bem. Agora que aprendemos como as linhas e colunas funcionam, é hora de tornar nosso layout um pouco mais interessante. Vamos adicionar outra linha dentro da nossa coluna e, desta vez, colocaremos vários itens dentro dela. Dentro do seu código, logo abaixo da primeira linha, que é essa, vamos adicionar outra linha. Vamos salvá-lo. Agora, vamos preenchê-lo com alguns widgets de espaço reservado para ver como ele Por enquanto, vou usar apenas o widget de texto. Então, dentro da fila, podemos dizer crianças. E então, dentro disso, podemos adicionar widgets de texto Vamos chamar isso de carta um. Cartão dois e cartão três. Vamos guardar isso. Aqui na pré-visualização, você pode ver que há três textos aparecendo lado a lado um ao lado do outro, exatamente como a linha funciona. Mas parece um pouco confuso. Tudo está agrupado à esquerda e o espaçamento não é igual Quero que cada um desses itens ocupe o mesmo espaço dentro da linha. Para fazer isso, podemos envolver cada widget de texto com algo chamado widget de expansão O widget de expansão diz ao filho que se estique e ocupe todo o espaço horizontal disponível igualmente Vamos atualizar nosso código. Vamos ver o texto aqui e deixe-me rolar um pouco. E ele pode clicar com o botão direito aqui, e diremos refatorar Então, vamos dizer que a largura do envoltório se expande. Se eu salvar, você pode ver que ocupou muito espaço e fazemos a mesma coisa com este, refatorar, expandir a largura do rap Então, novamente, refatore, largura da torneira expandida. Vamos salvar, agora que parece melhor. Cada texto agora compartilha a largura disponível igualmente, criando um layout limpo e agradável. Por padrão, o texto dentro do widget expandido está alinhado à esquerda, é por isso que eles aparecem no lado esquerdo de seus respectivos espaços E assim, construímos a estrutura para nossos cartões. Na próxima lição, substituiremos esses widgets de texto pelos widgets de cartão adequados, dando ao nosso layout uma aparência mais polida e profissional 7. Substituindo o texto com widget de cartão: Tudo bem, é hora de subir o nível das coisas. Temos usado o widget de texto simples até agora. Mas vamos substituí-los por algo mais limpo e estruturado. É aí que entram as cartas. Antes de fazermos isso, vamos dar ao nosso layout um pouco de espaço para respirar entre as linhas. Quase na segunda fila aqui. Vamos adicionar uma caixa de tamanho A. Vou definir a altura para 20. Guarde isso. Isso apenas adiciona uma lacuna vertical de 20 pixels, fazendo com que nosso layout pareça mais aberto e menos apertado Vamos substituir o primeiro widget de texto por um widget de cartão. Com isso, o que podemos fazer é simplesmente remover isso e depois podemos dizer cartão, e desta vez, vou usar a versão preenchida do cartão. Eu clico em cofre. Observe aquele construtor cheio de pontos, que simplesmente significa que o cartão terá uma cor de fundo, que podemos personalizar facilmente posteriormente Mas um cartão pode conter várias camadas internas, incluindo ícones de preenchimento, texto e até botões Vamos criar totalmente a primeira carta. Dentro disso, a primeira coisa que vou fazer é adicionar uma elevação a zero. E então eu vou definir a cor para as cores do ponto T, e vou definir isso para 100, guarde isso. Depois disso, você adicionará um gráfico. É aqui que as coisas começarão a aparecer. Vamos adicionar um preenchimento e vamos dizer borda e definir ele. Vou definir o preenchimento para 15 Guarde isso. Agora você vê esse cartão na pré-visualização. Role um pouco para que possamos ver o código. Agora, depois desse preenchimento, vamos adicionar uma vírgula. Então, se você clicar em Controle e barra de espaço, verá que a próxima coisa que precisamos fazer é adicionar uma criança. Aqui vamos centralizar tudo dentro desse centro, vamos adicionar outra criança, que vai segurar uma coluna Nesta coluna, quero que o alinhamento do eixo principal esteja no centro Essa coluna terá filhos, e os primeiros filhos serão um ícone. Vamos definir o ícone para ícones com pontos Pessoa. OK. E se eu disser isso, você deve ver o ícone dessa pessoa lá. E para esse ícone, logo após a pessoa, vou definir um tamanho. Vou definir o tamanho para 30. Vamos dizer isso de novo. Eu posso ver que ficou maior. E então podemos realmente definir a cor aqui. Portanto, a cor seria o tema do esquema de cores de pontos. O primário. Salve isso e você verá que temos uma cor para o ícone da pessoa. Agora, isso é apenas o ícone. Depois do ícone, adicionaremos um custo e, em seguida, adicionaremos uma caixa de tamanho. Vou definir a altura para oito pixels. Em seguida, adicionaremos um widget de texto, que diria perfil E então podemos estilizá-lo com ponto do tema do texto. E isso terá um título Pequeno. Vamos guardar isso. Agora você pode ver a aparência do nosso cartão de perfil dentro do painel. Vamos detalhar isso rapidamente. Aqui, a primeira coisa que temos é o cartão preenchido com pontos. Isso nos dá um simples cartão preenchido com o cartão de fundo. Em seguida, adicionamos um preenchimento. Isso cria um espaço dentro do cartão para que nosso conteúdo interno não fique preso nas bordas. Então, dentro disso, demos uma coluna. Isso marca o ícone e o texto verticalmente. Se você notar aqui, também fornecemos um centro. Isso mantém tudo bem centralizado. Então nós aqui fornecemos um custo de tamanho de caixa de oito pixels. Isso adiciona um pouco de espaço entre o ícone e o texto. Ao dizer isso, você verá um cartão de perfil limpo e centralizado Isso parece muito bom, não é? Agora, é claro, poderíamos simplesmente copiar colar esse mesmo cartão para os outros dois, mas essa não é a maneira mais elegante de criar layouts Em vez de repetir esse grande pedaço de código repetidamente, podemos torná-lo modular Criaremos um arquivo de widget separado para nosso cartão e , em seguida, o chamaremos com parâmetros diferentes como ícone, texto e cor Dessa forma, nosso código permanece limpo e escalável. Faremos exatamente isso na próxima lição. 8. Como criar o cartão de forma modular: Tudo bem. Agora que criamos nosso primeiro cartão, vamos torná-lo modular. Por que modular? Porque em vez de copiar e colar o mesmo cartão repetidamente, podemos criar um widget limpo e simplesmente reutilizá-lo com diferentes valores, títulos, ícones, cores, qualquer coisa que Isso mantém nosso código bonito, organizado e escalável. Vamos começar configurando a estrutura de pastas para isso. Então, vamos abrir nossa estrutura de pastas aqui e, dentro do laboratório, vou criar uma pasta aqui e chamaremos isso widgets de sublinhado do painel Dentro disso, vamos criar um arquivo chamado dart do cartão de sublinhado do painel Agora, dentro desse arquivo, vamos primeiro criar a estrutura básica do nosso widget de cartão Então, aqui, direi importar, empacotar, obturar material e, em seguida, diremos que a classe, cartão do painel estende o widget sem estado Dentro disso, diremos Cast, depois diremos cartão do painel, tecla superdt e, em seguida, direi tudo bem E então ligaremos para uma devolução. Chamaremos isso de cartão arquivado. Salvar. Ótimo. Agora vamos trazer o código do cartão que criamos anteriormente e colá-lo dentro desse widget Então, vamos ao ponto da tela inicial do layout e você pode ver o widget do cartão aqui Então, se você clicar aqui, você pode ver que este é o nosso cartão inteiro. Então pegue todo esse código, recorte-o, vá para o cartão do painel e, em seguida, aqui, vamos substituí-lo . Deixe-o em segurança. Agora, isso funciona, mas ainda não é dinâmico. No momento, tudo está codificado. Vamos tornar esse widget personalizável adicionando algumas variáveis Começaremos declarando-os dentro da classe que está aqui A primeira coisa que faremos é dizer cor final do cartão BG color. Aqui, a cor é na verdade o tipo e, por fim, significa que não poderemos personalizar essa variável posteriormente. Então, em seguida, vamos dizer final. Precisamos de dados de um ícone, que na verdade é um tipo, e criamos uma variável chamada ícone. Em seguida, criamos outra final , usamos uma string, que será um título. Agora, precisamos adicionar isso ao nosso construtor. Então, aqui, diremos que é necessária essa cor de fundo do cartão de pontos. Então, exigiu esse ícone de ponto. Se necessário, esse título de ponto, vamos salvá-lo. Então, aqui está o que cada variável faz. Cor grande do cartão que controlará a cor de fundo do cartão. O ícone nos permite usar ícones diferentes. O título dá a cada cartão seu próprio rótulo. Agora vamos fechar essa estrutura de pastas aqui, rolar um pouco para baixo. Agora vamos atualizar o widget do cartão para usar essas variáveis. Então, a primeira coisa que você verá aqui é a cor do cartão. Então, vou mudar isso para a variável que fornecemos que é o cartão Biglor E a próxima coisa foi o ícone. Então, aqui vamos remover isso e vamos usar apenas nossa variável chamada ícone. E então tivemos o título. Então, aqui, em vez de perfil, vamos simplesmente dizer título. Vamos guardar isso. E assim, nosso cartão agora é dinâmico. Pode inserir diferentes ícones, títulos, cores, e o único widget se adaptará a tudo Não é mais necessário copiar e colar. Na próxima lição, voltaremos ao nosso layout e, na verdade, usaremos esse widget de cartão modular para criar nosso painel com vários cartões 9. Usando o cartão de painel modular: Tudo bem, é hora de colocar nosso cartão dinâmico em ação. Já o criamos em um arquivo separado, então agora só precisamos importá-lo para o nosso layout principal. Vá até o ponto da tela inicial do nosso layout. E então, no canto superior direito após o dardo do material, diremos Importação, embalagem, prática de layout Você pode ver que temos o painel e, em seguida, o cartão personalizado que criamos. Vamos guardar isso. Certifique-se de que o nome do arquivo corresponda ao arquivo real que você criou. Se houver um erro de digitação, as coisas não funcionarão como você deseja. Agora, em seguida, role para baixo até o widget do cartão onde removemos o cartão E aqui dentro dessa criança, tudo o que precisamos fazer é segurar a tecla Control apertar a barra de espaço e dizer cartão do painel. E você pode ver aqui, ele pegou automaticamente as variáveis. Agora temos o ícone colorido do cartão BG e o título. Agora, para a cor BG do cartão o que vou fazer é removê-la. E eu vou apenas dizer cores que t e depois definir 200. Guarde isso. Você pode colocar um ponto de exclamação lá se quiser remover esse erro Em seguida, dentro do ícone, podemos dizer ícone ponto pessoa. Digamos isso e , no título, podemos simplesmente dizer perfil. Vamos guardar isso. E só para ter certeza de que vamos reconstruir esse layout. Então, basta clicar neste botão de atualização que reiniciará nosso layout E você pode ver que nada mudou. Isso significa que nosso cartão está funcionando bem. Agora vamos substituir todos os três espaços reservados por cartas reais Então, eu vou me livrar desse, e então podemos dizer cartão do painel e aqui, a cor vai ser cores ponto. Para definir isso como 100 e, em seguida, para ícone, vamos usar ícones com mensagem de pontos e para título, vou usar isso como mensagem. Vamos guardar isso. Vejo que recebemos o cartão de mensagem. Vamos fazer a mesma coisa com este. Eu vou me livrar desse. Digamos que um cartão de painel. E aqui, a cor de fundo será a cor ponto TO, que será 100. E o ícone, vamos mudar isso para ícones com pontos, o sublinhado do aplicativo é arredondado O título, vou chamá-lo apenas de aplicativos. Vamos guardar isso. Eu posso ver que temos três cartas. O cartão do painel agora é nosso widget reutilizável. O expandido garante que todos os cartões tenham a mesma largura. E o tamanho da caixa é , na verdade, aquela que devemos usar para dar espaçamento. Se você ver, temos um bom espaçamento aqui, mas não dentro disso Mas na verdade parece bom, mas se você quiser dar um pouco de espaçamento, o que você pode fazer é dar isso aqui Podemos dizer caixa de tamanho com uma largura de 20 pixels. Digamos que sim. Agora, isso vai dar o mesmo espaçamento entre essas cartas E, sem mais nem menos, temos três painéis dinâmicos e limpos três painéis dinâmicos e limpos posicionados lado a lado Sem código duplicado, sem confusão, apenas uma mágica limpa de vibração Na próxima lição, adicionaremos uma área de conteúdo e definiremos links de navegação para tornar esse painel mais real, como um aplicativo real. 10. Adicionando a área de conteúdo e a barra de navegação inferior: Tudo bem, é hora de dar vida ao painel. Já temos uma fileira de cartas no topo. Mas agora vamos adicionar uma área de conteúdo abaixo dela. Em seguida, finalize o layout com uma barra de navegação inferior. Vamos começar com a área de conteúdo. Agora, aqui, esta é a linha que realmente contém todas as cartas aqui. Essa é a linha principal. Logo depois disso, vamos adicionar uma caixa de tamanho com uma altura de 20 pixels. OK. E abaixo disso, vamos dizer expandido. E essa expansão terá um ponto de cartão preenchido. OK. E vamos clicar em Salvar. Ainda não conseguimos ver nada, mas está tudo bem. Então, aqui vamos adicionar um pouco de cor. Então, agora o que podemos fazer é definir um tema aqui. Então, podemos dizer que eles se destacam. Pontilhe a cor primária e, em seguida, podemos usá-la com Alpha. Então, basicamente, definimos a transparência aqui. Então, podemos definir isso para 30. E se eu não salvar, bem, ainda não vemos nada porque não fornecemos nenhum tipo de item ou dado dentro dele. Então, a seguir, o que podemos fazer é adicionar alguma elevação. Vou definir a elevação como zero, o que basicamente remove a elevação padrão. E aqui, na criança, vamos adicionar o centro. E dentro desse centro, vamos adicionar outra criança. E aqui, vamos adicionar o widget de texto. O widget de texto dirá área de conteúdo. Salve isso, e aí está. Agora, dentro desse widget de texto, podemos realmente estilizar isso Então, podemos dizer estilo. E então podemos dizer que o tema está desligado. Então, podemos dizer tema de texto e definir o título como médio ou pequeno. Vou definir isso como pequeno. Então, isso simplesmente coloca essa coisa em negrito. Agora vamos voltar um pouco e, se você ver aqui, o que fizemos? Usamos um tema com Alpha. Isso torna a cor dinâmica com base no tema atual do aplicativo. Aqui está o que está acontecendo. O tamanho do trabalho que adicionamos com os 20 pixels, que adiciona espaçamento entre os cartões e a área de conteúdo, expandido, certifique-se de que a área de conteúdo preenchida com o espaço restante na tela O preenchimento da raiz do cartão nos dá uma boa superfície de fundo. Então, basicamente, obtivemos tudo o que precisávamos. Agora, voltando a essa coisa do Alpha, se você ver isso, podemos realmente mudar a cor com base no tema que selecionamos no material b. Então, aqui nós fornecemos uma cor codificada, certo? Então, podemos realmente mudar isso com isso. Então, vamos seguir em frente e fazer isso. Vou apenas copiar isso, e depois vou substituir isso por este. E vamos fazer a mesma coisa aqui. Vou substituir isso por este e esse também. Então, da próxima vez que você alterar a cor inicial do aplicativo de material, toda a cor do aplicativo mudará com ela. Vamos realmente tentar isso. Vamos ao nosso ponto principal, e você pode ver quem disse que, para rasgar, vamos mudar isso para azul. Vamos salvar isso e pronto, o cartão e a área de conteúdo são atualizados juntos. Isso dá à sua interface de usuário um relógio dinâmico unificado. Agora vamos encerrar esta lição com uma barra de navegação. Já temos uma boa barra de aplicativos na parte superior, então adicionaremos uma parte inferior do cochilo ao próprio andaime Portanto, se você acessar o ponto da tela inicial do layout na parte inferior, poderá ver o poderá ver o Foi aqui que o andaime realmente terminou. E se você quiser apenas confirmar , você pode rolar para cima e ver que é um andaime, clique nele para ver o colchete de fechamento Ok, então esse é o andaime. Então, agora estamos dentro do andaime. Então, aqui, tudo o que você precisa fazer é digitar a barra de navegação inferior e, em seguida, podemos dizer a barra de navegação. Por isso, ele pede alguns destinos. Então, aqui, eu vou criar um elenco e ele vai conter algumas matrizes Agora, dentro dessa lista, você precisa ter pelo menos três destinos de navegação. Mas vamos adicionar quatro. Vamos seguir em frente e fazer isso. Então, dentro disso, vamos dizer destino de navegação. Aqui está. Agora, aqui você pode ver que ele recebe um ícone e um rótulo. Agora, para o ícone, o que podemos fazer é dizer ícone, digamos ícones ponto HOME. Porque queremos o ícone inicial. Agora, o rótulo pode ser um texto simples, como em casa. Agora, se eu salvar isso, você verá um erro. Basicamente, aqui você pode ver que o comprimento do destino deve ser maior ou igual a dois, o que não é verdade no momento. Vamos em frente e consertemos isso. O que podemos fazer é duplicar isso mais três vezes. Basicamente, temos quatro navegações agora. Agora, se eu não economizar, bem, acho que apareceu, está tudo bem. O que você pode fazer agora é recarregá-lo novamente e reiniciar o aplicativo Agora você pode ver que temos quatro itens NAB. Vamos mudar os dados para isso. Em vez de esperar pelo segundo, vou dizer pesquisar, e isso vai se tornar pesquisar pelo terceiro, vamos mudar isso para configurações, e aqui vamos mudar isso para configurações. Então, para o último, vamos chamar isso de ajuda. Aqui podemos chamar isso de ajuda. Vamos guardar isso. Agora você pode ver que temos os ícones. Agora, o problema aqui é que isso realmente não corresponde ao tema que criamos. Temos um tema azul e este é cinza. O que podemos fazer é realmente mudar ou aplicar a cor para isso. Dentro da barra de navegação inferior aqui, você pode dizer a cor de fundo. E se você se lembra, fizemos este, que na verdade é muito bom. Tema, ponto de contexto, um alfa. Copie isso, cole aqui e vamos mudar isso para 80. Não, cinco, não salve, você pode ver que dei aquela cor para isso. Se quiser, você pode realmente alterar a opacidade aqui. Portanto, você pode definir isso como 30 para combinar com a cor do que temos. Certo, há mais uma coisa que você precisa observar. Então, se você ver aqui, a casa está realmente selecionada, certo? Então, talvez você não consiga ver isso, então deixe-me alterar o valor aqui. Talvez possamos. Então, vamos adicioná-lo a cerca de 100. Ok, agora você pode ver que isso está destacado, certo? Então, se você quiser mudar isso de casa para a pesquisa, tudo o que você precisa fazer é dizer índice selecionado, que começa do zero. Então, zero é o lar. Uma é a pesquisa, duas é a configuração e três é a ajuda. Assim, você pode navegar facilmente entre esses botões. Então, agora vamos voltar para 30, vamos salvar. Tudo bem, então o índice selecionado controla qual item de navegação está atualmente selecionado cor de fundo usa a cor primária dinâmica com Alpha para obter consistência. O destino de navegação cria cada ícone por item de rótulo na barra de navegação Então, agora temos um layout completo. Vamos mudar o tema aqui para que fique muito melhor. Então, vou transformar isso de volta em lágrima, vou guardar isso, e este ficará melhor. 11. Encerramento e projeto do curso: Trabalho incrível, pessoal. Acabamos de criar um layout completo de vibração do zero. Começamos configurando o projeto base, entendendo os conceitos básicos de preenchimento e layout, construindo com linhas e colunas usando uma interface de usuário responsiva expandida para estruturar, criando um widget de cartão de painel modular, adicionando uma área de conteúdo dinâmico e, finalmente, reunindo tudo com a barra de navegação inferior Como usamos o ponto de contato do tema com cores dinâmicas, agora você pode alterar a aparência completa do seu aplicativo apenas atualizando a cor do tema. Veja isso. Se eu mudar para roxo agora e pronto, todo o painel se adapta. Na verdade, você pode mudar isso para azul ou até âmbar, seja qual for a sua vibração Essa é a mágica de criar layouts de forma limpa em flutter, uma estrutura sólida Para seu projeto de classe, duplique esse layout e escolha seu próprio tema Substitua os ícones e títulos nos cartões de acordo com sua própria ideia, como um aplicativo de viagens, um painel financeiro, um gerenciador de tarefas ou qualquer coisa que você goste. Experimente diferentes cores e ícones de espaçamento para torná-lo realmente seu. Se quiser, você pode adicionar mais destinos de navegação e ver como a interface do usuário é dimensionada. Depois de terminar, compartilhe uma captura de tela ou gravação de tela do layout finalizado na seção do projeto da classe Eu adoraria ver o quão criativo você pode ser com essa base. E é isso. Agora você tem um tema totalmente funcional e um layout flutuante adaptável sobre o qual você pode criar, seja para painéis, páginas de seja para painéis, destino ou Estou muito orgulhosa de você por acompanhar passo a passo. Continue construindo, continue experimentando, e nos vemos na próxima aula