0

Извините, если я потерял что-то, я только начал этот iOS-dev вчера. У меня есть базовое приложение, в котором пользователь может привязать до трех изображений, они хранятся в трех разных UIImageViews, приложение также извлекает координаты gps и изменяет их на адрес.Передача данных с ViewController на приложение электронной почты iOS

Что я хочу сделать, это отправить эти изображения и информацию на адрес электронной почты.

В настоящее время у меня есть кнопка отправки, которая связана с действием.

Благодаря

- (IBAction)sendFinalItem:(UIButton *)sender { 
    NSLog(@"send button pressed"); 
    MFMailComposeViewController *mailcontroller = [[MFMailComposeViewController alloc] init]; 
    [mailcontroller setMailComposeDelegate:self]; 
    NSString *email [email protected]"[email protected]"; 
    NSArray *emailArray = [[NSArray alloc] initWithObjects:email, nil]; 
    [mailcontroller setToRecipients:emailArray]; 
    [mailcontroller setSubject:@"[Urgent]Potential Job, iPhone snapped"]; 
    [self presentViewController:mailcontroller animated:YES completion:nil]; 
} 

- (void) mailComposeController:(MFMailComposeViewController *)controller didFinishWithResult:   (MFMailComposeResult)result error:(NSError *)error 
{ 
    switch (result) 
    { 
     case MFMailComposeResultCancelled: 
     NSLog(@"Mail cancelled"); 
     break; 
     case MFMailComposeResultSaved: 
     NSLog(@"Mail saved"); 
     break; 
     case MFMailComposeResultSent: 
     NSLog(@"Mail sent"); 
     break; 
     case MFMailComposeResultFailed: 
     NSLog(@"Mail sent failure: %@", [error localizedDescription]); 
     break; 
     default: 
     break; 
    } 

// Close the Mail Interface 
[self dismissViewControllerAnimated:YES completion:NULL]; 
} 
+0

Вы смотрели на документации для 'MFMailComposeViewController'? Существует способ добавления вложений. – rmaddy

+0

Теперь я буду искать это спасибо – Karl

ответ

3

В вашем методе sendFinalItem написать это ..

NSData *dataImage = UIImageJPEGRepresentation(yourImageViewName.image, 0.5f); 
[mailer addAttachmentData:dataImage mimeType:@"image/jpeg" fileName:@"Image_1.jpg"] 

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

EDIT:

[mailer setMessageBody:yourTextView.text isHTML:NO]; 

Вы можете установить isHTML в YES (Если ваш textview содержит HTML данные.)

EDIT:.

Если вы хотите хорошее качество затем используйте UIImagePNGRepresentation(yourImageViewName.image) вместо UIImageJPEGRepresentation(yourImageViewName.image, 0.5f)

Счастливого кодирование ..

+0

Если вы хотите изображение хорошего качества, то используйте UIImagePNGRepresentation (yourImageViewName.image) вместо UIImageJPEGRepresentation (yourImageViewName.image, 0.5f). Наслаждайтесь кодированием ... –

+0

Проще говоря, спасибо вы очень хорошо работали – Karl

+0

Мое удовольствие, и, пожалуйста, отметьте его как ответ, если он вам помог .. –