¿Cómo segue valores cuando mi ViewController está incrustado en un UINavigationController?
Tengo dos controladores de vista que envían valores de un lado a otro a través de segues y elprepareForSegue método. Esto funcionó perfectamente para mí hasta que decidí incrustar mi ViewController dentro de un Controlador de navegación.
Si observa el método a continuación, puede ver que el problema es que midestinationViewController ya no es ViewController ... es mi UINavigationController recién creado.
TimeViewController.swift (controlador secundario)
override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) {
var dest = segue.destinationViewController as! ViewController
var min = selectedMinute * 60
output = min + selectedSecond
dest.returnedLabel = recievedString
if cancelled == true {
dest.returnedValue = 0
} else {
dest.returnedValue = output
}
}
Una vez que mi ViewController está incrustado en el UINavigationController, aparece este error:
Could not cast value of type 'UINavigationController' (0x1088ff698) to 'deleteCoreData.ViewController' (0x106a1f9b0).
Entonces, si lanzo mi destinationViewController como UINavigationController, con razón pierdo el acceso a las variables que tenía anteriormente. Estas variables son cómo persisto los datos entre los controladores.
Entonces mi pregunta es:¿Cómo segue valores cuando mi ViewController está incrustado en un UINavigationController?
Actualización: así es como se ve mi guión gráfico ...