Iphone MFMessageComposeViewController不显示摄像头图标

Iphone MFMessageComposeViewController不显示摄像头图标,iphone,ios,mms,uipasteboard,Iphone,Ios,Mms,Uipasteboard,当我手动打开“新消息”时,我会在文本编辑区域的左侧看到一个摄像头图标。当我使用MFMessageComposeViewController时,它不会显示此图标,这意味着您无法插入图像。我知道这是可以做到的,因为制造它的人可以做到。一个细微的区别是封口已打开。这可能是一个线索,他们是如何使这项工作 我知道MFMessageComposeViewController不允许以编程方式插入图像,这就是为什么我要执行复制到UIPasteboard的技巧。这部分工作得很好 有人问过同样的问题,但除了“不可能

当我手动打开“新消息”时,我会在文本编辑区域的左侧看到一个摄像头图标。当我使用MFMessageComposeViewController时,它不会显示此图标,这意味着您无法插入图像。我知道这是可以做到的,因为制造它的人可以做到。一个细微的区别是封口已打开。这可能是一个线索,他们是如何使这项工作

我知道MFMessageComposeViewController不允许以编程方式插入图像,这就是为什么我要执行复制到UIPasteboard的技巧。这部分工作得很好

有人问过同样的问题,但除了“不可能”之外,这个问题没有得到回答

这是我的第一篇帖子,所以我没有足够高的排名来发表其他问题帖子


他们是怎么做到的?MFMessageComposeViewController有什么诀窍吗?或者他们使用的是完全不同的东西吗?

我找到了答案!使用UIApplication sharedApplication启动空白消息有效,而MFMessageComposeViewController无效。因为我使用的是UIPasteboard,所以不需要在主体中插入项目

    NSString *phoneToCall = @"sms: 123-456-7890";
    NSString *phoneToCallEncoded = [phoneToCall stringByAddingPercentEscapesUsingEncoding:NSASCIIStringEncoding];
    NSURL *url = [[NSURL alloc] initWithString:phoneToCallEncoded];

    [[UIApplication sharedApplication] openURL:url];

这是MFMessageComposeViewController中的一个错误,因为为什么它们允许将图像插入其中一个而不插入另一个。我会插入一个图像,但我不允许,因为我没有足够的声誉

我通过以下代码修复了此问题:

 UIPasteboard *pasteboard = [UIPasteboard generalPasteboard];
           pasteboard.persistent = YES;
           NSString *imagefile =app.strimagepath;

           ///  
           BOOL fileExists = [[NSFileManager defaultManager] fileExistsAtPath:imagefile];

           if (fileExists)
           {    
               NSData *data = UIImagePNGRepresentation([UIImage imageWithContentsOfFile:imagefile]);
               pasteboard.image = [UIImage imageWithData:data];
           }
           NSString *phoneToCall = @"sms: 123-456-7890";
           NSString *phoneToCallEncoded = [phoneToCall stringByAddingPercentEscapesUsingEncoding:NSASCIIStringEncoding];
           NSURL *url = [[NSURL alloc] initWithString:phoneToCallEncoded];

           [[UIApplication sharedApplication] openURL:url];

此处app.strimgPath是存储在文档目录中的图像路径。当MessageView打开时。长按并单击“粘贴”,消息将被粘贴。

现在,如果您的声誉提高。。。请插入一张图片你还需要这个kdeo_16的帮助吗?不,不,我已经试过了,它可以工作了。。。我试过了,我想在等待你的回复两周前,有没有一种方法可以初始化信息中的内容,就像发送什么号码一样?这样你就可以在邮件里写上“在这里粘贴图片”之类的内容了?@Boeckm:我完全知道你在说什么。不幸的是,我只能使用“MFMessageComposeViewController”添加消息。您只能将复制添加到剪贴板。回答我的问题的关键是,您必须使用UIApplication启动消息视图。现在发布一个使用MFMessageComposeViewController的示例。除非Apple更新此类,否则不会。当您无法看到摄像头按钮或无法粘贴时,只需尝试添加收件人的有效邮件id,它将启用摄像头图标并允许您粘贴图像。