0
respostas

Dúvida com layout

Bom dia,

Estou seguindo o curso de iOS: Layouts com SwiftUI e estou com uma dúvida que consegui resolver porém não consegui entender o motivo.

Quando foi feita a separação do header para uma nova classe, foi foi um ajuste utilizando o sizeClass para definir uma altura para o header baseado no dispositivo, de acordo com o vídeo, a altura ficou sendo de 200 para iPhones e 310 para iPads.

Entretanto, tanto no preview do Xcode, quanto rodando diretamente no device o layout ficou conforme print abaixo:

print 1

Depois de realizar algumas tentativas de ajustes, conseguir ajustar o height para o preview. Tentei "voltar" com o código do header para a classe ContentView para ver se havia cometido algum erro durante a aplicação do sizeClass e para minha surpresa, o código funcionou conforme o vídeo. Ao retornar o código para a classe apartada novamente o problema surgiu.

Por fim, o ajuste que realizei foi, na classe ContentView ao adicionar o HeaderView eu modifiquei o frame do mesmo para que exibisse completamente seu conteúdo, ficando com 240 e 350 respectivamente. E conforme imagem abaixo, o layout ficou devidamente ajustado:

print 2

A pergunta é, porque motivos eu precisei ajustar a altura da view quando ela foi apartada e porque a regra de sizeClass que foi usada no video não funcionou?

Segue o link do repositório com meu código, qualquer ajuda é muito bem vinda, valeu!

https://github.com/maclacerda/alura-viagens-swiftui

Estou usando a versão 13.2.1 do Xcode