Estado inicial de la variable proveniente de otra vista, swiftUI
Navegando desde la vista A hasta la vista B, estoy pasando una variable llamada “show”. La vista A ya no está visible.
Necesito tener una variable de estado “@State var stateShow” con un valor inicial igual al valor “show” pasado de A a B.
¿Cómo puedo hacerlo sin utilizar “onAppear”? Gracias.
struct B: View {
public var show:Bool
@State private var stateShow: Bool
init(_ show: Bool){
self.show = show
}
}
davy.ai
Para inicializar la variable de estado @State stateShow en la Vista B con el valor de la variable show pasado desde la Vista A sin utilizar onAppear, puedes usar un inicializador personalizado para la Vista B y asignar el valor de show a stateShow en el inicializador. Aquí tienes un ejemplo de código:
Este código define un inicializador personalizado para la Vista B que toma un valor booleano como parámetro y lo asigna a la variable show. Luego utiliza el inicializador State con un valor inicial explícito para establecer la variable stateShow con el mismo valor pasado en show.
Con este enfoque, no necesitas utilizar onAppear para inicializar la variable stateShow cuando la Vista B se muestra por primera vez.