我在iOS 9上使用swift获得了这个非常奇怪的行为,当我点击单元格时,我有一个tableViewCell
,当点击以拍摄某些内容时会打开imagePicker
这是第一次打开拣货员需要10秒钟,但当你点击两次时它会立即打开......
选择器的初始化代码如下
let certificateImagePicker = UIImagePickerController()
certificateImagePicker.delegate = self
certificateImagePicker.allowsEditing = false
certificateImagePicker.sourceType = .Camera
certificateImagePicker.modalPresentationStyle = .CurrentContext
呈现选择器的代码是presentViewController(certificateImagePicker, animated: false, completion: nil)
我现在不相关,但是在打开选择器之后它会显示此错误消息
快照未呈现的视图会导致空快照。 确保您的视图在快照之前至少呈现过一次或 屏幕更新后的快照。
答案 0 :(得分:1)
之前有过类似的问题。我只是把我的代码放在dispatch_async中,它会执行得更快。
dispatch_async(dispatch_get_main_queue(),
{
let certificateImagePicker = UIImagePickerController()
certificateImagePicker.delegate = self
certificateImagePicker.allowsEditing = false
certificateImagePicker.sourceType = .Camera
certificateImagePicker.modalPresentationStyle = .CurrentContext
presentViewController(certificateImagePicker, animated: false, completion: nil)
})
答案 1 :(得分:0)
我第一次尝试使用uiimagepickercontroller时遇到了类似的延迟。在我的情况下,在加载超级uiviewcontroller时初始化控制器有很大帮助:
setInterval()
答案 2 :(得分:0)
这仅适用于调试版本,当您运行连接到Xcode的应用程序时。