2015-07-30 3 views
1

Как и большинство людей, я в процессе преобразования существующего приложения в swift, и есть некоторые функции, которые нельзя напрямую преобразовать, поэтому вместо этого мне пришлось скопируйте несколько классов Objective-C и настройте заголовок Bridging. Все это сделано, и я могу вызывать функции, но когда я их вызываю, я не могу понять, как включить обратный вызов и получить значения из обратного вызова из этого метода. Ниже я получил до сих пор.Вызов функции с обратным вызовом в объекте-c из swift

Это ЬурейеЕ и метод из файла Objective-C

typedef void (^DictionaryAndStatusRecievedCallBack)(BOOL status, NSDictionary *dictionary); 
-(void)verifyLoginCredentialsWithLoginName:(NSString *)loginName Passphrase:(NSString *)passPhrase callback:(DictionaryAndStatusRecievedCallBack)callback; 

А вот как я называю его в стремительном файл я не могу показаться, чтобы выяснить

var serviceManager : MobileServiceManager = MobileServiceManager() 
typealias onCompleteBlock = (status:Bool?, values:NSDictionary?)->Void 
serviceManager.verifyLoginCredentialsWithLoginName("username", passphrase: "password", callback: ??) 

что бы добавить в область обратного вызова, я пытался использовать псевдоним типа, так как увидел, что в другой статье упоминается об этом, но я все еще не мог заставить это работать.

ответ

4
var serviceManager : MobileServiceManager = MobileServiceManager() 
serviceManager.verifyLoginCredentialsWithLoginName("username", passphrase: "password", callback: { (status, values) in 
/* Your code*/ }) 
+0

Спасибо, это просто, как только я вижу это и имеет смысл, я просто не мог понять, как туда добраться. –

Смежные вопросы