Код подключения Facebook немного ускользает от меня.У меня нет проблем при входе в систему и записи на стене, однако я просто не могу понять, как должны работать методы делегата для FBDialog и FBStreamDialog.
- (void)postToWall {
FBStreamDialog *dialog = [[[FBStreamDialog alloc] init] autorelease];
dialog.delegate = self;
dialog.userMessagePrompt = @"Enter your message:";
dialog.attachment = [NSString stringWithFormat:@"JSONpost code"];
[dialog show];
}
Я придерживаюсь этих протоколов в своемконтроллер:
<FBDialogDelegate, FBSessionDelegate, FBRequestDelegate>
Затем я реализую два метода:
- (void) dialogDidCancel:(FBDialog *)dialog {
NSLog(@"Failed");
}
- (void) dialogDidSucceed:(FBDialog *)dialog {
NSLog(@"Success");
}
После того, как я нажму «опубликовать» и методы postToWall будут выполнены, «Facebook» всплывающее окно впусто, за исключением маленькой буквы "X" в верхнем правом углу и буквы "F" (логотип facebook) в верхнем левом углу.Пользовательский интерфейс будет оставаться там до тех пор, пока я не нажму «X», в результате вызывается метод делегата dialogDidCancel
.Почтовые данные отображаются на странице Facebook, кажется, все работает.
Почему метод dialogDidSucceed
никогда не вызывается?Мне нужно это, чтобы освободить свой контроллер Facebook и восстановить пользовательский интерфейс там, где пользователь находился до «запуска» FB Connect.
Спасибо:)