我正在尝试从我的应用中通过电子邮件发送UIImage。在我的应用程序中,我拍了一张照片,然后将UIImageView设置为刚拍摄的照片。然后我有一个按钮,应该将该图片作为附件发送,如下所示:
- (IBAction)emailPhoto:(UIButton *)sender {
sendImage = imageView.image;
MFMailComposeViewController *composer = [[MFMailComposeViewController alloc] init];
[composer setMailComposeDelegate:self];
if([MFMailComposeViewController canSendMail]) {
[composer setToRecipients:[NSArray arrayWithObjects:@"JanJaap@Korteweg.nl",nil]];
[composer setSubject:@"A nice subject"];
[composer setMessageBody:@"Hi,\n\nI'm sending you this beautiful photograph." isHTML:NO];
[composer setModalTransitionStyle:UIModalTransitionStyleCrossDissolve];
NSData *data = UIImageJPEGRepresentation(sendImage,1);
[composer addAttachmentData:data mimeType:@"image/jpeg" fileName:@"Photograph.jpg"];
[self presentViewController:composer animated:YES completion:nil];
}
}
出于某种原因,当我打电话给我时,我得到了作曲家窗口,但它仍然是灰色的,我无法编辑任何东西(放入电子邮件地址,输入正文等)。也没有附件出现。我删除了图像代码并再次尝试,这一切都有效,所以问题出在我处理图像的某个地方,但是我不知道那可能是什么,我根本没有任何错误或警告。我已经尝试了许多其他策略,包括bas64编码并将照片保存到照片库然后检索它,但它们看起来太复杂,导致永远不会结束警告和错误链。任何帮助赞赏。谢谢!