Menu
CoddyTech

Spacer separa os elementos

Parte da seção Layouts que se adaptam do Journey de Flutter da Coddy. Lição 4 de 30.

Uma barra superior geralmente tem um logotipo à esquerda e links à direita. Um Spacer faz isso: é um widget vazio que ocupa todo o espaço restante na linha e empurra tudo o que vem depois dele para a outra extremidade.

Row(
  children: [
    const Text('Logo'),
    const Spacer(),
    const Text('Cart'),
  ],
)

O Spacer fica exatamente onde deve estar o espaço. Os widgets anteriores a ele permanecem à esquerda, os widgets posteriores se movem para a direita, e o espaço entre os vizinhos do mesmo lado permanece como você o definiu.

mainAxisAlignment: MainAxisAlignment.spaceBetween afasta todos os filhos uns dos outros. Use um Spacer quando apenas um espaço deve aumentar.

challenge icon

Desafio

Fácil

Mantenha Coddy à esquerda e empurre Help e Log in até a borda direita, ainda separados por 16 pixels.

Experimente você mesmo

import 'package:flutter/material.dart';

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

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

  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      debugShowCheckedModeBanner: false,
      home: Scaffold(
        body: Padding(
          padding: const EdgeInsets.fromLTRB(16, 48, 16, 16),
          child: Column(
            children: [
              Row(
                children: [
                  const Text(
                    'Coddy',
                    style: TextStyle(fontSize: 20, fontWeight: FontWeight.bold),
                  ),
                  const Text('Help'),
                  const SizedBox(width: 16),
                  const Text('Log in'),
                ],
              ),
            ],
          ),
        ),
      ),
    );
  }
}
quiz iconTeste seus conhecimentos

Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.

Todas as lições de Layouts que se adaptam

Pratique por conta própria: Compilador de Flutter online