Usando Swift 1.1 y Xcode 6.2.
Tengo un UIStoryboard que contiene una UIViewController
subclase personalizada singular . En él, tengo una @IBOutlet
conexión de tipo UIView
desde ese controlador a una UIView
subclase en el guión gráfico. También tengo salidas similares para subvistas de esa vista. Ver figura A.
Pero en tiempo de ejecución, estas propiedades son nulas (Figura B). Aunque he asegurado que he conectado las salidas en Interface Builder.
Pensamientos :
- ¿Es posible que debido a que estoy usando una subclase de una subclase, algo se estropee con la inicialización? No anularé ningún inicializador
awakeFromNib:
no es llamado por alguna razón- Tal vez no se conecte a subvistas en subvistas
Cosas que he probado:
@IBOutlet
Tipos de elementos coincidentes y del guión gráfico exactamente (en lugar deUIView
)- Eliminar propiedad y salida y volver a agregarlos
Figura A *
Figura B
* El código oculto en Figure A
es:
@IBOutlet private var annotationOptionsView: UIView!
@IBOutlet private var arrivingLeavingSwitch: UISegmentedControl!
Gracias.
clearView
Espero ser nulo. Es algo que todavía tengo que refactorizar. Consulte también la nota al pie de la figura A. @ShaanSingh ¡Debería serlo! porque las conexiones de los guiones gráficos se establecen (se supone que están) en tiempo de ejecución y no deberían ser nulas.
let vc = UIStoryboard(name: "LocationPickerModal", bundle: nil) .instantiateViewControllerWithIdentifier("LocationPickerModalViewController") as LocationPickerModalViewController