gpt4 book ai didi

iphone - 如何消除 MFMessageComposeViewController 呈现的延迟?

转载 作者:行者123 更新时间:2023-12-03 19:01:58 25 4
gpt4 key购买 nike

if([MFMessageComposeViewController canSendText])
{
MFMessageComposeViewController *sms_message_vc = [[MFMessageComposeViewController alloc] init];
sms_message_vc.body = text;
sms_message_vc.recipients = recipients;
sms_message_vc.messageComposeDelegate = self;
[self presentModalViewController:sms_message_vc animated:FALSE];
[[UIApplication sharedApplication] setStatusBarHidden:TRUE];
[sms_message_vc release];
}

当执行此操作时,在实际显示撰写 View 之前会有几秒钟的延迟。造成这种情况的原因是什么以及如何消除延迟?

编辑1:澄清:制作sms_message_vc和ivar没有帮助,因为...alloc] init]进程将挂起UI几秒钟,无论在哪里是的。

编辑2:尝试GCD(具有不同的优先级)来尝试同时运行初始化。没有帮助:

dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_LOW, (unsigned long)NULL), ^(void){
sms_message_vc = [[MFMessageComposeViewController alloc] init];
sms_message_vc.messageComposeDelegate = self;
});

最佳答案

考虑将 MFMessageComposeViewController *sms_message_vc 设为类实例变量并调用:

MFMessageComposeViewController *sms_message_vc = [[MFMessageComposeViewController alloc] init];

早些时候,在初始化 sms_message_vc 后立即将委托(delegate)设置为 self

然后就这样做:

sms_message_vc.body = text;
sms_message_vc.recipients = recipients;
[self presentModalViewController:sms_message_vc animated:FALSE];
[[UIApplication sharedApplication] setStatusBarHidden:TRUE];
[sms_message_vc release];

当您想要实际发送消息时。这不会改变太多,但可能会有所帮助。

关于iphone - 如何消除 MFMessageComposeViewController 呈现的延迟?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11546109/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com