Я оголосив протокол Swift:
protocol Option {
var name: String { get }
}
Я заявляю про декілька реалізацій цього протоколу - деякі класи, деякі перелічення.
У мене є контролер перегляду з властивістю, оголошеною так:
var options: [Option] = []
Коли я намагаюся встановити для цього властивості масив об'єктів, що реалізують Option
протокол в інших ВК prepareForSegue
, я отримую помилку виконання:
fatal error: array cannot be bridged from Objective-C
Чому це не працює? Компілятор має всю необхідну інформацію, і я не розумію, що взагалі з цим має відношення Objective-C - мій проект містить лише файли Swift, і ці масиви не надходять і не виходять з будь-яких методів фреймворку, які вимагати від них мосту NSArray
.
@objc
свій протокол? stackoverflow.com/a/28029568/377369