A maioria dos modificadores SwiftUI modificam as visualizações abaixo deles na hierarquia, mas alguns modificadores modificam as visualizações acima deles na hierarquia. No meu exemplo abaixo .navigationTitle
, .toolbar
, e .presentationDetents
estão modificando elementos da pilha de navegação e da planilha em que são apresentados, mas são instalados em uma visualização de texto.
Conceitualmente, como esses modificadores funcionam internamente? Mais ainda, como eu poderia criar um meu?
Estou criando minha própria pilha de navegação (por razões irrelevantes) e tenho uma abordagem que parece promissora, mas tenho dúvidas sobre ela. Minha abordagem atual é um modificador de visualização que define propriedades em um objeto de ambiente, e o objeto de ambiente é um modelo de visualização para a pilha de navegação personalizada.