2015-09-24 2 views
1

MFMessageComposeViewController не отображает кнопку отправки и тело сообщения на ios8, при нажатии на клавиатуру списка получателей, а также кнопку отправки, появляется тело сообщения. Ниже приведен код функциональности сообщения:MFMessageComposeViewController не отображает кнопку отправки и тело сообщения на ios8

MFMessageComposeViewController *msgController = [[MFMessageComposeViewController alloc] init] ; 
if([MFMessageComposeViewController canSendText]) 
{ 
    if (msgController) 
     { 
      msgController = nil; 
      msgController = [[MFMessageComposeViewController alloc] init] ; 
     } 
NSString *messageBody [email protected]"helloWorld"; 
msgController.body = messageBody; 
msgController.recipients = numberArray; 
msgController.messageComposeDelegate = (id)self; 
[self presentViewController:msgController animated:YES completion:^{}]; 

Заранее спасибо.

ответ

1

Прежде всего добавить рамки MessageUI в ваших рамках приложения, а затем

#import <MessageUI/MessageUI.h> 
@interface class() 
<MFMailComposeViewControllerDelegate> 
{ 
.... 
} 
@end 

Затем в реализации класса написать

 if ([MFMailComposeViewController canSendMail]) 
    { 
     MFMailComposeViewController *mail = [[MFMailComposeViewController alloc] init]; 
     [mail setMailComposeDelegate:self]; 
     [mail setSubject:@"Subject goes here..."]; 
     [mail setMessageBody:@"Message body goes here..." isHTML:NO]; 
     [self presentViewController:mail animated:YES completion:NULL]; 
    } 

, а также реализации делегата для MFMailcomposeViewController, как как

- (void)mailComposeController:(MFMailComposeViewController *)controller didFinishWithResult:(MFMailComposeResult)result error:(NSError *)error { 
    [controller dismissViewControllerAnimated:YES completion:nil]; 
} 
+0

Я говорю о функции sms, которая включает MFMessageComposeViewController, а не почту. – Saptarshi

+0

Привет, вы можете проверить эту ссылку как для Mail & Message, так и для работы с iOS8 https://developer.apple.com/library/ios/samplecode/MessageComposer/Listings/MessageComposerViewController_m.html –

0

Должен быть получатель и какое-либо сообщение в теле для включения кнопку «Отправить».

Вот ссылка для справки:

https://developer.apple.com/library/ios/documentation/UserExperience/Conceptual/SystemMessaging_TopicsForIOS/Articles/SendinganSMSMessage.html#//apple_ref/doc/uid/TP40010416-SW1

http://iosdevelopertips.com/core-services/how-to-send-an-sms-progammatically.html

Надеется, что это помогает!

+0

Если вы проверили код, отрезанный Я предусмотрел, что я уже получил получателей и тело, и они не были пустыми. – Saptarshi

+0

Так появляется ли на экране композитор кнопка отправки или кнопка сохранения отключена? –

+0

Нет, он содержит только кнопку textField получателя и кнопку отмены, когда нажимается на текст получателя. На клавиатуре появляется кнопка отправки и отправки, появляется тело сообщения. – Saptarshi

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