【发布时间】:2010-12-30 19:13:05
【问题描述】:
我正在使用MFMessageComposeViewController 发送应用内短信。问题是当我有一个带有空格的NSString 分配给正文时,它将删除所有空格。下面的代码演示了这个问题。有趣的是,当我尝试将相同的文本复制到剪贴板并粘贴到短信应用时,它会起作用。
- (void)sendSMS {
MFMessageComposeViewController *controller = [[MFMessageComposeViewController alloc] init];
if([MFMessageComposeViewController canSendText])
{
[controller setBody:@" aaa aaa"];
controller.recipients = [NSArray arrayWithObjects:nil];
controller.messageComposeDelegate = self;
[self presentModalViewController:controller animated:YES];
}
[controller release];
}
//it becomes "aaa aaa" on the SMS message box when controller shows up.
有人知道如何解决这个问题吗?
提前致谢!
【问题讨论】:
-
只是好奇:字符串中的空格是制表符还是空格?
-
我会尝试将您的字符串常量分配给一个变量,然后在您调用 setBody 之前使用该变量进行 NSLog 调用并查看它是如何显示的(在 setBody 调用中使用相同的变量)。它可能会以您想要的方式打印,但至少它会给您一些信息。您还可以在调用 setBody 之后调用 NSLog([controller body]) 并查看其显示方式。
-
我已经完成了。 NSLog 和 controller.body 用正确的空格显示它。但是,在控制器消息框上显示它没有空格。
-
我是这么认为的,但至少你已经排除了一些事情。
-
纯文本。 MFMessageComposeViewController body 只能接受文本。
标签: iphone objective-c cocoa-touch ios ios4