MFMailComposeViewController не заполняет получателей в ios 5
Я пытаюсь отправить письмо в список массивов электронной почты, которые я получаю из базы данных, когда я отправляю, список получателей заполняется в iOS 7
но когда я попробовал в iOS 5
список получателей не заполняется. Есть идеи почему? Это моя почтовая функция
-(void)sendEmailToContacts:(NSArray *)fList withText:(NSString *)emailText withTag:(NSInteger )tag
{
if([MFMailComposeViewController canSendMail])
{
MFMailComposeViewController *mailComposer = [[MFMailComposeViewController alloc] init];
mailComposer.view.tag=tag;
NSString *htmlBody =[NSString stringWithFormat:@"<a href=\"%@\">%@</a>",_currentAdd.contentUrl,addtext];
[mailComposer setMessageBody:htmlBody isHTML:YES];
[mailComposer setSubject:_currentMail.subject];
mailComposer.mailComposeDelegate = self;
[mailComposer setToRecipients:fList];
[self presentViewController:mailComposer animated:YES completion:nil];
}
else
{
NSLog(@"Device is unable to send email in its current state.");
}
}
мой fList
(список получателей) является NSArray
это пример вывода моего списка
(
"john@gmail.com",
"mary@gmail.com",
"akhil@gmail.com",
"tester@gmail.com"
)
3 ответа
Решение
-(void)sendEmailToContacts:(NSArray *)fList withText:(NSString *)emailText withTag:(NSInteger )tag
{
if([MFMailComposeViewController canSendMail])
{
MFMailComposeViewController *mailComposer = [[MFMailComposeViewController alloc] init];
//mailComposer.view.tag=tag;
NSString *htmlBody =[NSString stringWithFormat:@"<a href=\"%@\">%@</a>",_currentAdd.contentUrl,addtext];
[mailComposer setMessageBody:htmlBody isHTML:YES];
[mailComposer setSubject:_currentMail.subject];
mailComposer.mailComposeDelegate = self;
[mailComposer setToRecipients:fList];
[self presentViewController:mailComposer animated:YES completion:nil];
}
else
{
NSLog(@"Device is unable to send email in its current state.");
}
}
Очевидно, проблема заключалась в настройке тега, если я пытаюсь установить тег перед строкой setToRecipients, он не будет отображать список получателей в iOS 5, он будет работать, если строка настройки тега закомментирована или установлена после setToRecipients.
Попробуй это.
NSArray *fList = [NSArray arrayWithObjects:@"raja@apple.com",@"john@gmail.com",@"mary@gmail.com",@"akhil@gmail.com",@"tester@gmail.com", nil];
MFMailComposeViewController *mailComposer = [[MFMailComposeViewController alloc] init];
mailComposer.view.tag=tag;
NSString *htmlBody =[NSString stringWithFormat:@"<a href=\"%@\">%@</a>",_currentAdd.contentUrl,addtext];
[mailComposer setMessageBody:htmlBody isHTML:YES];
mailComposer.mailComposeDelegate = self;
[mailComposer setSubject:_currentMail.subject];
mailComposer.delegate = self;
[mailComposer setToRecipients:fList];
[self presentViewController:mailComposer animated:YES completion:nil];
Получатели ожидаются как неизменный массив. проверьте тип вашего массива
NSArray *usersTo = [NSArray arrayWithObject: @"raja@apple.com"];
[mailComposer setToRecipients:usersTo];