mam ten sam problem. Zrobiłem kompozytor silne odniesienia z
@property (nonatomic, strong, retain) MFMessageComposeViewController *messageComposer;
Następnie klasa właściciel nazywa tę metodę:
-(void)sendSMSFromController:(UIViewController*)controller
{
self.messageComposer = [MFMessageComposeViewController new];
if([MFMessageComposeViewController canSendText]) {
[_messageComposer setBody:_body];
[_messageComposer setRecipients:[NSArray arrayWithObjects:_recipient, nil]];
[_messageComposer setMessageComposeDelegate:self];
[controller presentViewController:_messageComposer animated:NO completion:NULL];
}
}
Kompozytor pojawia się szybko, ale powoli zanika. Finalizuje za pomocą:
- (void)messageComposeViewController:(MFMessageComposeViewController *)controller didFinishWithResult:(MessageComposeResult)result
{
switch (result) {
case MessageComposeResultCancelled:
NSLog(@"Message sending cancelled.");
break;
case MessageComposeResultFailed:
NSLog(@"Message sending failed.");
break;
case MessageComposeResultSent:
NSLog(@"Message sent.");
default:
break;
}
[controller dismissViewControllerAnimated:YES completion:^(){
self.messageComposer = nil;
}];
}
Po ponownym uruchomieniu urządzenia działa poprawnie. Przed ponownym uruchomieniem (po zerwaniu z MessageService przez wysłanie niepoprawnych odbiorców) nie udało się.
Czy powielono problem w nowym pustym projekcie? – Wain
Nie. Używam kopii projektu na żywo. –
Mam na myśli czy jesteś pewien, że nie jest to spowodowane przez coś w twoim projekcie. Czy używasz niestandardowych czcionek w pasku nawigacji? Udowodnij problem w prostym projekcie. Podnieś błąd w Apple, jeśli nadal dzieje się to w prostym projekcie. – Wain