1

我正在尝试使用以下代码显示 MFMessageComposeViewController:

controller = [[MFMessageComposeViewController alloc] init];

if([MFMessageComposeViewController canSendText])
{
    controller.body = [NSString stringWithFormat:@"%@%@%@", itemString, amountString, callTimeString];   
    controller.recipients = [NSArray arrayWithObject:@"12345678"];
    controller.messageComposeDelegate = self;
    [self presentModalViewController:controller animated:YES];
} 

问题是当我按下按钮调出 MFMessageComposeViewController 时,分配需要几秒钟。我尝试将 alloc 行移动到我的 viewDidLoad 方法,但这只是解决了问题,我最终等待了几秒钟以加载视图。

有什么方法可以加快分配和显示我的 MFMessageComposeViewController 或使用委托方法之类的吗?

谢谢。

4

2 回答 2

0

好吧,你所做的似乎是正确的。你没有做错任何事。检查这个 -不能设置 MFMessageComposeViewController 的接收者?&答案中附加的链接

于 2012-03-01T03:49:03.707 回答
0

我有一个类似的问题,在这里查看我的答案:当 MFMessegeComposeViewController 最终加载时,我需要一个回调

对我来说,不是 alloc 花费了太长时间,而是presentModalViewControllerof the MFMessageComposeViewController,它在 UI 线程上阻塞了 Apple 的代码,所以除了抛出你自己的进度视图之外,没有办法将它作为背景。

于 2013-04-04T00:15:50.157 回答