【发布时间】:2015-11-21 01:09:50
【问题描述】:
我想在电子邮件应用程序中使 URL 可以点击。问题是参数化的 URL 由于 URL 中的“&”而破坏了这一点。下面的 body 变量是问题行。 “body”的两个版本都不正确。电子邮件应用程序打开后,文本将停在“...链接:”处。对 & 符号进行编码需要什么?
NSString *subject = @"This is a test";
NSString *encodedSubject =
[subject stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
//NSString *body = @"This is a link: <a href='http://somewhere.com/two.woa/wa?id=000¶m=0'>click me</a>"; //original
NSString *body = @"This is a link: <a href='http://somewhere.com/two.woa/wa?id=000&param=0'>click me</a>"; //have also tried &
NSString *encodedBody =
[body stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
NSString *formattedURL = [NSString stringWithFormat: @"mailto:myname@somedomain.com?subject=%@&body=%@", encodedSubject, encodedBody];
NSURL *url = [[NSURL alloc] initWithString:formattedURL];
[[UIApplication sharedApplication] openURL:url];
【问题讨论】:
标签: iphone objective-c cocoa cocoa-touch