2012-01-28 3 views
1

인터넷을 검색하고 스택을 검색했으며 내 조건에 맞는 답변을 찾지 못했습니다. (Xcode 4.2, iOS 5, ARC, LLDB, Storyboard, Universal App)사진을 MFMailComposeViewDelegate에 추가하십시오. (Xcode 4.2, iOS 5, ARC, LLDB, Storyboard, Universal App)

사용자가 이메일에 추가 할 사진을 선택할 수있는 방법을 찾고 있습니다.

나는 눈에 잘 띄지 않게 유지하고 사용자가 자신의 사진 라이브러리에서 사진을 추가하거나 카메라로 사진을 찍을 수있는 버튼을 MFMailComposeViewController 내에 추가하고 싶습니다.

UIImpagePicker 및 카메라가있는 뷰 컨트롤러의 버튼을 사용하여 UIImageView에 별도의 메일 기능 버튼이있는 이미지를 추가하려고 시도했지만이 기능이 과도하게 사용되어 앱이 불필요하게 복잡해졌습니다. 이메일에 선택한 사진을 삽입하는 코드.

내 인앱 이메일은 여기에, 완벽하게 작동 코드

에게있다 .H

#import <MessageUI/MessageUI> 
<MFMailComposeViewControllerDelegate> 

메일 작곡가는 사용자가 선택한 사진을 추가 할 수있는 기능을 제공하지 않습니다

- (IBAction)Email:(id)sender 
{ 
    if ([MFMailComposeViewController canSendMail]) { 
     MFMailComposeViewController *mail = [[MFMailComposeViewController alloc] init];   
     mail.mailComposeDelegate = self; 

     [mail setSubject:@"Feedback"]; 

     NSArray *toRecipients = [NSArray arrayWithObjects:@"feedback", nil]; 
     [mail setToRecipients:toRecipients]; 

     NSString *emailBody = @"-Your Message Here-"; 
     [mail setMessageBody:emailBody isHTML:NO]; 

     mail.modalPresentationStyle = UIModalPresentationPageSheet; 

     [self presentModalViewController:mail animated:YES]; 

    } else { 
     UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Error:" 
                 message:@"E-mail is not supported on your device." 
                 delegate:nil 
               cancelButtonTitle:@"Cancel" 
               otherButtonTitles:nil]; 
     [alert show]; 
    } 
} 

답변

1

하는 .m 자체 및 컨트롤을 composer 뷰 컨트롤러에 추가하는 것은 권장되지 않습니다.
사용자가 UIImagePickerController를 사용하여 사진을 먼저 선택한 다음 메일 작성기를 제시 할 때 첨부 파일로 추가해야합니다.

질문은 코드하는 방법이 아니라 UI를 디자인하는 방법입니다. 어쩌면 당신은 지저귐 응용 프로그램이 다양한 첨부 파일과 추가 정보를 처리하는 것처럼 조금 만들 수 있습니다.

파비안

+0

나는 이걸로 아무 것도 찾을 수 없었기 때문에 나는 ... 이메일에 선택한 UIImageView를 추가하는 코드를 줄 수 있습니까? –

0

하지만 당신은 선택 도구를 메일 첨부 파일로 추가하기 위해 선택한 파일의 사진 라이브러리 파일이나 디렉토리에 액세스하지 못할.

이 같을한다

:

경로는 NSString * = [NSBundle mainBundle] pathForResource : ofType "정지"@ "PNG"@]; NSData * myData = [NSData dataWithContentsOfFile : path]; [picker addAttachmentData : myData mimeType : @ "이미지/png"fileName : @ "체포"];

관련 문제