Estou usando um recurso personalizado TipViewStyle
para modificar o plano de fundo e ajustar levemente o layout das Dicas no meu aplicativo. Tudo parecia ótimo até o iOS 18.4. Desde a atualização, o layout está sendo compactado e a mensagem dentro da Dica está ficando truncada. Aqui está uma captura de tela de como ficou no iOS 18.4.
e outra mostrando como era antes do iOS 18.4.
Aqui está o código relevante para o estilo personalizado:
struct CustomTipViewStyle: TipViewStyle {
func makeBody(configuration: Configuration) -> some View {
VStack(alignment: .leading, spacing: 4) {
HStack {
configuration.title?
.font(.headline)
.foregroundColor(.daBackground)
Spacer()
Button(action: { configuration.tip.invalidate(reason: .tipClosed) }) {
Image(systemName: "xmark")
.foregroundColor(.daBackground.opacity(0.3))
}
}
VStack(alignment: .leading, spacing: 8.0) {
configuration.message?
.font(.subheadline)
.foregroundColor(.daBackground.opacity(0.8))
Divider().background(.daBackground.opacity(0.3))
ForEach(configuration.actions) { action in
HStack {
Spacer()
Button(action: action.handler) {
action.label()
.foregroundStyle(.accent)
.font(.system(size: 18, weight: .bold))
}
}
}
}
}
.padding()
.background(Color.daBlack)
}
}
Alguém mais teve esse problema com o TipViewStyle no iOS 18.4? Qualquer solução alternativa ou alternativa será bem-vinda! Agradecemos antecipadamente!
O problema de truncamento pode ser resolvido definindo um sensato
idealWidth
na mensagem.Ps: o modificador
.foregroundColor
está obsoleto, use-o.foregroundStyle
em vez dele.