【问题标题】:iOS Messaging in app Not working Properly应用程序中的 iOS 消息无法正常工作
【发布时间】:2013-03-03 12:54:57
【问题描述】:

我正在开发一个 RSS 应用程序,它需要通过消息发送文章的 url。到目前为止,我有这个代码,

 MFMessageComposeViewController *controller = [[MFMessageComposeViewController alloc] init] ;{
            if([MFMessageComposeViewController canSendText])
            {
                controller.body = @"Check Out This Informtaion, %@", [NSURL URLWithString:self.feedItem[@"url"]];
                controller.recipients = [NSArray arrayWithObjects: nil];
                controller.messageComposeDelegate = self;
                [self presentModalViewController:controller animated:YES];
            }}

它会起作用,它会在应用程序中打开消息,但它在消息中所说的只是

Check Out This Information, %@

当我做同样的事情时

[NSURL URLWithString:self.feedItem[@"url"]];

在Safari中打开页面,它可以工作,所以这是正确的,但我不知道如何修复它,请帮助。

【问题讨论】:

    标签: iphone ios mfmessagecomposeview imessage


    【解决方案1】:

    将正文更改为:

    controller.body = [NSString stringWithFormat:@"Check Out This <a href=\"%@\">Information<\a>", self.feedItem[@"url"]];
    

    【讨论】:

    • 我已经修复了格式(以 4 个空格开始一行以使其成为代码),但我认为您不需要为此使用 HTML;消息正文可能只是纯文本。
    【解决方案2】:

    这一行:

    controller.body = @"Check Out This Informtaion, %@", [NSURL URLWithString:self.feedItem[@"url"]];
    

    等价于

    controller.body = @"Check Out This Informtaion, %@";
    [NSURL URLWithString:self.feedItem[@"url"]];
    

    …因为这两个语句是独立执行的。

    正如 user2056143 所指出的,您在值周围缺少 NSString -stringWithFormat:。即:

    controller.body = [NSString stringWithFormat:@"Check Out This Informtaion, %@", [NSURL URLWithString:self.feedItem[@"url"]]];
    

    【讨论】:

    • 我会在几分钟内试试这个,现在无法访问我的 Mac,谢谢
    • 当我在思考这个问题时,你们都知道在 Safari ios 应用程序中实现共享按钮的堆栈溢出问题吗?带有图标和不同共享选项的那个。
    • 是的——搜索 UIActivityViewController
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-02-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-01-02
    相关资源
    最近更新 更多