12

我在做傻事吗?我可以预先填写并发送电子邮件,但在 emailBody 中忽略了“\r\n”:

- (void) sendEventInEmail
{
    MFMailComposeViewController *picker = [[MFMailComposeViewController alloc] init];
    picker.mailComposeDelegate = self;

    NSString *emailSubject = [eventDictionary objectForKey:EVENT_NAME_KEY];

    [picker setSubject:emailSubject];

    // Fill out the email body text
    NSString *iTunesLink = @"http://itunes.apple.com/gb/app/whats-on-reading/id347859140?mt=8"; // Link to iTune App link
    NSString *content = [eventDictionary objectForKey:@"Description"];
    NSString *emailBody = [NSString stringWithFormat:@"%@\r\nSent using <a href = '%@'>What's On Reading</a> for the iPhone.", content, iTunesLink];

    [picker setMessageBody:emailBody isHTML:YES];

    picker.navigationBar.barStyle = UIBarStyleBlack;

    [self presentModalViewController:picker animated:YES];
    [picker release];
}

问候

戴夫

4

2 回答 2

28

如果 isHTML set YES \n 不起作用,则必须设置 isHTML:NO 或使用 HTML 换行符,例如<br />输入新行

<p> </p>插入一个新段落,这通常意味着双换行符。

试试这个 isHTML:YES:

[picker setMessageBody:@"1st line<br />2nd line<br />3rd line<br />and so on..." isHTML:YES]; 

如果 isHTML:NO 就放 \n

[picker setMessageBody:@"1st line\n2nd line\n3rd line\nand so on..." isHTML:NO]; 

它会给你这个:

第 1 行
第 2 行
第 3 行
以此类推...

于 2012-03-28T00:15:30.030 回答
4

Doh...一直在努力工作并将Objective C字符串与HTML混合。使用<p></p>标签来修复。

戴夫

于 2010-03-31T16:35:43.803 回答