📊 Slides: Cap 19 — Cadastro de Treinador: Formulários

📖 Ver Cap 19 completo

Resumo visual da aula, em blocos — use como roteiro de revisão ou apresentação.


🟦 Slide 1: Objetivo da Aula


🟦 Slide 2: O Cenário Prático

Para entrar na Arena, o jogador precisa se cadastrar. Crie a Tela de Inscrição: nomes com menos de 3 letras mostram “Nickname muito curto!” e bloqueiam o envio.


🟦 Slide 3: Dicionário do Programador

Termo Significado
TextField A “Caixa de Texto” onde o usuário escreve
Validação Checar se o que foi escrito faz sentido
isError Propriedade que deixa o campo com borda vermelha

📂 Organização: telas de formulário em ui/screens/ (ex: CadastroScreen.kt)


🟦 Slide 4: Do Nickname ao Botão

graph TD
    A["Jogador digita Nickname"] --> B{Tem 3 letras?}
    B -->|Não| C["Mostra Erro em Vermelho"]
    B -->|Sim| D["Libera Botão Confirmar"]

🟦 Slide 5: Exemplo — Validando o Nome

@Composable
fun CadastroScreen() {
    var nickname by remember { mutableStateOf("") }

    val temErro = nickname.length < 3 && nickname.isNotEmpty()

    Column(modifier = Modifier.padding(16.dp)) {
        TextField(
            value = nickname,
            onValueChange = { nickname = it },
            label = { Text("Nome do Treinador") },
            isError = temErro,
            supportingText = {
                if (temErro) Text("O nome deve ter no mínimo 3 letras", color = Color.Red)
            }
        )

        Button(
            onClick = { /* Próximo Passo */ },
            enabled = nickname.length >= 3
        ) {
            Text("Confirmar Inscrição")
        }
    }
}

🟦 Slide 6: Prática e Próximos Passos


⬅️ Voltar para Slides