Итак, у меня есть приложение iOS с одним видом. Внутри контроллера вида у меня есть метод, прикрепленный к кнопке в раскадровке. Вот метод, когда затем нажимается кнопка:Приключение iOS при отображении SLComposeViewController
- (IBAction)tweetButton:(id)sender {
if ([SLComposeViewController isAvailableForServiceType:@"SLServiceTypeTwitter"]) {
SLComposeViewController *tweetSheet = [[SLComposeViewController alloc] init];
tweetSheet = [SLComposeViewController composeViewControllerForServiceType:@"SLServiceTypeTwitter"];
[tweetSheet setInitialText:@"This is a test."];
[self presentViewController:tweetSheet animated:YES completion:nil];
}
else {
NSLog(@"Twitter not configured.");
}
}
Всякий раз, когда я нажимаю кнопку в приложении, я получаю аварии со следующей ошибкой:
2015-07-17 15:57:24.110 Now Playing[425:19583] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: 'Application tried to present a nil modal view controller on target <ViewController: 0x157e4c620>.'
Мой код следует в значительной степени каждый пример, который я видел в Интернете, поэтому я не уверен, что случилось.
Используйте макропеременную для типа обслуживания, не трудно набрать их, заменить '@ "SLServiceTypeTwitter"' 'по SLServiceTypeTwitter' – tbaranes
Duh! Это сработало. Спасибо. –