0Pricing
SwiftUI Academy · Aula

Guias de Alinhamento Personalizadas

Alinhe visualizações com precisão em toda a hierarquia.

Guias de Alinhamento Personalizadas é uma aula grátis de SwiftUI Academy no CoddyKit. Esta é a aula 2 de 4. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de SwiftUI Academy, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de SwiftUI Academy inclui 4 aulas no total.

Partes desta aula ainda não foram traduzidas e aparecem em inglês.

Lining Things Up

Stacks align children using a shared edge or center. Alignment guides let you fine-tune exactly where that line falls. 📏

Built-in Alignments

An HStack takes a vertical alignment like .top or .center, while a VStack takes a horizontal one.

HStack(alignment: .top) {
    Text("A")
    Text("Big")
}

The alignmentGuide Modifier

The alignmentGuide modifier overrides where a single view exposes a given alignment to its parent.

Text("Hi")
    .alignmentGuide(.top) { d in d[.bottom] }

Reading Dimensions

The closure gets a ViewDimensions value, letting you read d.width, d.height, or any named guide.

Text("Hi").alignmentGuide(.leading) { d in
    d.width / 2
}

Shift the Guide

Returning a different number moves the view relative to its peers, since the parent lines up everyone on that returned value.

Custom Alignment ID

For reuse, define a type conforming to AlignmentID with a defaultValue for unaligned cases.

struct MidBadge: AlignmentID {
    static func defaultValue(in d: ViewDimensions) -> CGFloat {
        d[.bottom]
    }
}

Name It on Alignment

Extend VerticalAlignment or HorizontalAlignment with a static property bound to your AlignmentID.

extension VerticalAlignment {
    static let midBadge = VerticalAlignment(MidBadge.self)
}

Use the Custom Line

Pass your named alignment to a stack, then tag the views that should snap to that custom line.

HStack(alignment: .midBadge) {
    Avatar()
    Label()
}

Tag the Participants

Each view that should share the line sets alignmentGuide for your custom alignment to the point it wants to match.

Label()
    .alignmentGuide(.midBadge) { d in
        d[VerticalAlignment.center]
    }

Cross-Hierarchy Power

Custom guides shine when views live in different containers but must still align, like a caption to an icon center across columns. ✨

Mind the Default

Any view that does not set your custom guide falls back to its defaultValue, so pick that default thoughtfully.

Quick Check

Recall what the alignmentGuide closure receives.

Recap

You can now override alignment with alignmentGuide and define custom AlignmentID types to align views across the hierarchy. 🎉

Perguntas Frequentes

A aula “Guias de Alinhamento Personalizadas” é grátis?

Sim — o texto completo de “Guias de Alinhamento Personalizadas” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de SwiftUI Academy, atualize para CoddyKit PRO. O curso de SwiftUI Academy inclui 4 aulas no total.

O que vou aprender em “Guias de Alinhamento Personalizadas”?

Alinhe visualizações com precisão em toda a hierarquia. Você pratica SwiftUI Academy com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.

Preciso ter experiência prévia para começar SwiftUI Academy?

Nenhuma experiência prévia é necessária. SwiftUI Academy no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 2 de 4.

Quanto tempo leva a aula “Guias de Alinhamento Personalizadas”?

A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.

Posso escrever e executar código nesta aula de SwiftUI Academy?

Sim. Cada aula de SwiftUI Academy inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.

Todas as aulas deste curso

  1. Fundamentos do GeometryReader
  2. Guias de Alinhamento Personalizadas
  3. O Protocolo de Layout
  4. Criando um Layout de Fluxo
← Voltar para SwiftUI Academy