Eu declarei um protocolo Swift:
protocol Option {
var name: String { get }
}
Eu declaro várias implementações deste protocolo - algumas classes, alguns enums.
Eu tenho um controlador de visualização com uma propriedade declarada assim:
var options: [Option] = []
Quando tento definir essa propriedade para uma matriz de objetos que implementam o Option
protocolo em outro VC prepareForSegue
, recebo um erro de tempo de execução:
fatal error: array cannot be bridged from Objective-C
Por que isso não funciona? O compilador tem todas as informações de que precisa, e eu não entendo o que Objective-C tem a ver com ele - meu projeto contém apenas arquivos Swift, e esses arrays não estão entrando ou saindo de quaisquer métodos de framework que necessitam que eles sejam ligados NSArray
.
@objc
seu protocolo? stackoverflow.com/a/28029568/377369