繁体   English   中英

ABPeoplePickerNavigationController慢吗?

[英]Is ABPeoplePickerNavigationController slow?

使用ABPeoplePickerNavigationController ,要花一点时间( ABPeoplePickerNavigationController秒)来加载和显示控件,该控件的速度比其他弹出窗口的正常反应时间慢。

我提供的解决方案是将控制器设置为变量,并通过以下方式访问此预加载的对象:

[self presentViewController:self.peoplePicker animated:YES completion:nil];

只是出于好奇,还有另一种方法可以在不预加载的情况下启动选择器吗?

同样在这里,我没有答案来解决它,我认为这可能是iOS 8的错误( 更新 :是的,Apple确认了)。

在我对iOS 7.x的测试中, ABPeoplePicker的演示时间少于0.2秒。

该问题仅在iOS 8.x上出现,并且仅在您首次出现ABPeoplePicker时出现 在我的应用程序中, ABPeoplePicker演示文稿大约需要3秒钟,而在示例应用程序中,通过按一个按钮仅执行ABPeoplePicker演示文稿,大约需要1.5秒。 我在模拟器和具有约20个触点的设备上进行了测试。

预加载实例不会像我期望的那样显着改变演示时间。 我也尝试过强制在主线程上进行演示,并将动画设置为NO,但是在iOS 8上仍然很慢。

时间分析器对我没有帮助,因为我看不到意外的长时间计算。

当我们等待所谓的错误修复时,我认为最好的解决方法是在加载ABPeoplePicker时显示活动进度指示器或实现我们自己的ABPeoplePicker

我已经实现了自己的应用程序,您可以在GitHub上找到它: VeeContactPicker ,当然可以使用它! 😉

苹果新闻:

苹果团队回答了我的错误报告:

Apple Developer Relations 2015年6月16日上午00:36

我们认为此问题已在最新的iOS 9 beta中得到解决。 这是iOS 9的预发布更新。 请参阅发行说明以获取完整的安装说明。 请对此版本进行测试。 如果仍有问题,请提供任何相关日志或信息,以帮助我们进行调查。*

iOS 9更新

在iOS 9中,ABFramework已被弃用,因为它带有一个新的面向对象的联系人框架,并带有一个新的选择器[请参见CNContactPicker ]! 不幸的是,问题似乎尚未解决,逻辑已更新,但ViewController与iOS 8相同。因此CNContactPicker加载和显示控件的速度仍然很慢...

我已将该错误报告给了苹果,等待消息...

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM