Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

358
Visualizações
Obteniendo error: expresión esperada en la lista de expresiones

¿No puedo usar el interruptor para verificar una variable e implementar una vista basada en el valor de la variable? Intenté usar if else también pero sigo recibiendo el mismo error. ¿Tengo que crear un método y devolver una vista para el mismo y usarlo aquí?

 struct AppThemeButton: View { var action: (() -> Swift.Void)? var buttonType: ThemeButtonType = .bordered var body: some View { Button { // button action if let act = action { act() } } label: { Text("+ \(TextStrings.addAProject.localized())") .frame(maxWidth: .infinity, maxHeight: .infinity, alignment: .center) .background( switch self.buttonType { case .bordered: Color.green case .colored: Color.red } ) .frame(height: 60, alignment: .center) .padding([.leading, .trailing]) } } } enum ThemeButtonType { case bordered case colored }

Codigo con error

over 4 years ago · Santiago Trujillo
1 Respostas
Responde à pergunta

0

Está utilizando este modificador https://developer.apple.com/documentation/swiftui/view/background(_:alignment:) , requiere una View como parámetro, no una función o cierre.

El modificador está obsoleto desde iOS 15. Si su aplicación está destinada a iOS 15 y superior, puede usar este nuevo modificador https://developer.apple.com/documentation/swiftui/view/background(alignment:content:)

En el caso de iOS 15 inferior, debe envolver su etiqueta con su switcher

 enum ThemeButtonStyle: ButtonStyle { case filled case bordered func makeBody(configuration: Configuration) -> some View { switch self { case .filled: configuration.label .foregroundColor(.white) .padding() .background(Capsule().fill(.red)) case .bordered: configuration.label .foregroundColor(.black) .padding() .background(Capsule().stroke(.black)) } } } struct AppThemeButton: View { let style: ThemeButtonStyle var body: some View { Button { print("Touched") } label: { Text("Touch Me") }.buttonStyle(style) } } struct ThemeButtonStyle_Previews: PreviewProvider { static var previews: some View { VStack { AppThemeButton(style: .filled) AppThemeButton(style: .bordered) } } }

Resultado

ingrese la descripción de la imagen aquí

over 4 years ago · Santiago Trujillo Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda