У меня есть быстрый класс Jammingue, в котором есть объект NSObject в объективе-c, называемый tryagain. Я знаю, как передавать данные между swift viewcontrollers, используя протоколы, но добавленным элементом здесь является NSObject, а не ViewController, а также элемент Objective-C. Можно ли использовать протоколы аналогичным образом? Это то, что у меня есть:Передача данных из ViewController в NSObject
protocol predesignedDelegate{
func sendPredesignedFunction(info: [String])
}
class Jammingue: NSViewController{
var delegate: passDelegate? = nil
var predesignedArray = []
func doDelegateStuff(){
if let delegate = delegate{
delegate.sendPredesignedFunction(predesignedArray)
}
}
override func prepareForSegue(segue: NSStoryboardSegue, sender: AnyObject?) {
if let second = segue.destinationController as? SecondViewController{
second.representedObject = predesignedArray
}
}`
Проблема заключается в том destinationController только для viewcontrollers, а с другой стороны Segue, в Objective-C NSObject, я не могу использовать одни и те же команды для извлечения данных , Есть ли способ сделать то, что я пытаюсь сделать?
Спасибо за сообщение такого тщательного ответа. Похоже, это сработает! Спасибо – Uzebeckatrente
К сожалению, я не думаю, что это то, о чем я просил. Все, что я ищу, это иметь возможность ссылаться на переменную, инициализированную и определенную в ViewController в соответствующем NSObject, возможно, менее сложную, чем вы опубликовали. – Uzebeckatrente
Что значит «... в соответствующем NSObject ...»? –