调用alloc init时,UIImagePickerController确实很慢

 郑小斌-杭州 发布于 2023-02-13 10:58

我有一个视图控制器,按下tabBarController中的一个选项卡.在这个视图控制器中,我在viewDidLoad方法中初始化一个UIImagePickerController:

- (void)viewDidLoad
{
    [super viewDidLoad];

    //Set imagePicker
    //-------------------------//
    _imagePicker = [[UIImagePickerController alloc] init];
    _imagePicker.delegate = self;
    _imagePicker.videoMaximumDuration = 10.0f;
}

目的是在稍后按下按钮时显示UIImagePickerController.出于某种原因,虽然为此视图控制器按下选项卡图标时,此viewDidLoad方法正在运行时有3-4秒的挂起.当我注释掉行_imagePicker = [[UIImagePickerController alloc] init]时,没有挂起时间,视图控制器立即加载 - 应该如此.

有谁知道为什么分配和初始化UIImagePickerController需要这么长时间?如果是这样,除了将其作为后台进程运行之外,有没有办法加快速度?看来这不是正常行为.

我使用的是iOS7,我没有调用viewWillAppear或viewDidAppear.

1 个回答
  • 事实证明,这只是在调试模式下(当iPhone连接并通过Xcode运行时)的一个问题.一旦相同的应用程序运行而没有连接到Xcode,则不会发生延迟.

    2023-02-13 10:59 回答
撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有