おそらく、PDFドキュメントを添付したいのか、PDFドキュメントへのリンクを追加したいだけなのか、あなたの質問を理解しているかどうかわからないので、両方に答えます。PDFデータをメールに添付するために使用するコードは次のとおりです
- (void)emailFile
{
if(![MFMailComposeViewController canSendMail]) {
UIAlertView *cantSend = [[UIAlertView alloc] initWithTitle:@"Error" message:@"Device not configured to send email" delegate:self cancelButtonTitle:nil otherButtonTitles:@"OK", nil];
[cantSend show];
} else {
MFMailComposeViewController *mailView = [[MFMailComposeViewController alloc] init];
mailView.mailComposeDelegate = self;
[mailView setSubject:@"PDF Attached to email"];
// Adding an actual PDF document to the email.
[mailView addAttachmentData:(__bridge NSData *)myPDFData mimeType:@"pdf" fileName:@"AttachedPDFDocument"];
[mailView setMessageBody:[NSString stringWithFormat:@"Sending %@. This email maybe sent as junk mail",fileName] isHTML:NO];
[self presentModalViewController:mailView animated:YES];
}
}
実際のpdfではなくpdfデータを追加していることに注意してください。次に、拡張子(MimeType)をpdfに設定し、ファイルの名前を設定します。作成中の電子メールに添付ファイルを簡単に追加できます。
メールにリンクを追加するには、次のように簡単です
- (void)emailFile
{
if(![MFMailComposeViewController canSendMail]) {
UIAlertView *cantSend = [[UIAlertView alloc] initWithTitle:@"Error" message:@"Device not configured to send email" delegate:self cancelButtonTitle:nil otherButtonTitles:@"OK", nil];
[cantSend show];
} else {
MFMailComposeViewController *mailView = [[MFMailComposeViewController alloc] init];
mailView.mailComposeDelegate = self;
[mailView setSubject:@"PDF Link added in HTML"];
// Adding a HTML Link to an email. Remembering to set the Message to allow HTML.
NSString *link = [NSString stringWithFormat:@"http://www.google.com"];
[mailView setMessageBody:[NSString stringWithFormat:@"<p><font size=\"2\" face=\"Helvetica\"><a href=%@></br>%@</br></a></br></font></p>",link,@"Google"] isHTML:YES];
[self presentModalViewController:mailView animated:YES];
}
}
setMessage
最初の例では HTML を使用していませんが、HTML を使用するように設定しているデータを添付していないことに注意してください。NSString
これにより、html 要素を含むメッセージ本文にを設定できるようになります。
編集
myPDFData は、CFDataRef
Web サービスからダウンロードした PDF の dataContent の 1 つであり、ユーザーはそれを電子メールで自分自身に転送できます。を使用している場合は、 attachmentData を設定ARC
するときにブリッジを追加する必要があります。(__bridge NSData *)myPDFData
お役に立てれば。