He declarado un protocolo Swift:
protocol Option {
var name: String { get }
}
Declaro múltiples implementaciones de este protocolo: algunas clases, algunas enumeraciones.
Tengo un controlador de vista con una propiedad declarada así:
var options: [Option] = []
Cuando intento establecer esta propiedad en una matriz de objetos que implementan el Option
protocolo en otro VC prepareForSegue
, obtengo un error de tiempo de ejecución:
fatal error: array cannot be bridged from Objective-C
¿Por qué no funciona esto? El compilador tiene toda la información que necesita y no entiendo en absoluto qué tiene que ver Objective-C con él: mi proyecto solo contiene archivos Swift, y estas matrices no entran ni salen de ningún método marco que necesitan ser puenteados NSArray
.
@objc
tu protocolo? stackoverflow.com/a/28029568/377369