如何从dataDetectorTypeLink设置电子邮件主题?

时间:2012-12-12 17:23:40

标签: objective-c ios uitextfield datadetectortypes

UITextView的文字中,我有一个电子邮件地址,dataDetectorType设置为dataDetectorTypeLink。有没有办法用这种配置设置电子邮件的主题行?我知道如何使用MFMailComposeController设置电子邮件的主题行,但有没有办法将其与dataDetectorType结合使用?

编辑:以下是我的应用委托中我的(重新)定义`openURL:(NSURL *)网址:

-(void)openURL:(NSURL *)url
{
    MFMailComposeViewController *mailer = [[MFMailComposeViewController alloc] init];
    mailer.mailComposeDelegate = self;
    [mailer setSubject:@"feedback on Gay Haiku"];
    [self presentViewController:mailer animated:YES completion:NULL];
}

但我得到一个错误No visible @interface for AppDelegate declares the selector presentViewController:animated:`。

2 个答案:

答案 0 :(得分:1)

您是否尝试将?subject=附加到该链接?

@"mailto:webmaster@site.com?subject=Web Site Extraordinaire"

我只是意识到只有当你切换到UIWebView时才能使用它...这是一个选项吗?

编辑:

另一种方法是继承UIApplication并覆盖openURL:。这被描述为here

答案 1 :(得分:0)

由于这似乎是您控制的固定文字,因此您可以在电子邮件地址范围内向NSLinkAttributeName添加NSAttributedString属性,而不是启用自动链接检测。这将允许您指定在点击链接时希望系统打开的完整URL。然后你可以使用Mundi的建议(包括URL中的subject =)来设置电子邮件的主题。