Mam cel c, który akceptuje parametry "id" i chcę przekazać mu Swift Struct.jak przekazać Swift Struct jako parametr metody Objective-C
// file: ObjcClass.m
@implementation ObjcClass
+ (void)addListener:(id)listener {
//... do something with listener
}
//file DemoStruct.swift
Struct DemoStruct {
func registerAsListener() {
ObjcClass.addListener(self) //Cant find a way to do this
}
}
Komunikat o błędzie kompilacji otrzymuję:
Type 'DemoStruct' nie jest zgodny z protokołem 'AnyObject'
Tak moje pytanie brzmiałoby: jak zrobić obiektywną metodę C, akceptując "Any" zamiast "AnyObje ct "i czy jest coś takiego?
Wow, to jest eleganckie rozwiązanie. Xcode 7 beta 3. Musiałem podklasować NSObject. – neoneye