Я разрабатываю универсальное приложение, и я кодирую iOS6.
Я использую imagePickerController, чтобы сделать снимок, а затем отправлю его в виде вложения с помощью MFMailComposeViewController. Все это работает.
Моя проблема в том, что когда я снимаю изображение в портретном режиме, он отображается в MFMailComposeViewController в ландшафтном режиме. Кроме того, когда он достигнет адреса электронной почты адресата, он отображается в ландшафтном режиме.
Если я снимаю изображение в ландшафтном режиме, он отображается в MFMailComposeViewController в ландшафтном режиме, и когда он достигнет адреса электронной почты адресата, он отображается в альбомном режиме. Так что все ОК.
У меня такая же проблема на обоих моих тестовых устройствах; iPhone5 и iPad2.
Как сделать снимок в портретном режиме для адресата электронной почты в портретном режиме?
Вот как я добавляю изображение к E-Mail:
if ( [MFMailComposeViewController canSendMail] )
{
MFMailComposeViewController * mailVC = [MFMailComposeViewController new];
NSArray * aAddr = [NSArray arrayWithObjects: gAddr, nil];
NSData * imageAsNSData = UIImagePNGRepresentation( gImag );
[mailVC setMailComposeDelegate: self];
[mailVC setToRecipients: aAddr];
[mailVC setSubject: gSubj];
[mailVC addAttachmentData: imageAsNSData
mimeType: @"image/png"
fileName: @"myPhoto.png"];
[mailVC setMessageBody: @"Blah blah"
isHTML: NO];
[self presentViewController: mailVC
animated: YES
completion: nil];
}
else
{
NSLog( @"Device is unable to send email in its current state." );
}