gpt4 book ai didi

ios - UIImagePickerController 显示最后一张照片而不是相机输入

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:41:06 27 4
gpt4 key购买 nike

我的应用程序出现异常行为。为了拍照,我使用以下非常标准的代码来显示 UIImagePickerController:

UIImagePickerController *picker = [[UIImagePickerController alloc] init];
picker.delegate = self;
picker.allowsEditing = NO;
picker.sourceType = UIImagePickerControllerSourceTypeCamera;
[self presentViewController:picker animated:YES completion:nil];

我第一次点击调用此操作的按钮时,它工作得很好。当我再次点击那个按钮时,奇怪的行为开始了。 UIImagePickerController 再次启动,但它不再显示来自相机的输入。它显示了我拍摄的最后一张照片。

此状态的更多详细信息:

  • 点击图片会显示自动对焦的黄色方 block 。 (它实际上用于正确对焦相机)
  • 当我点击 ImageCapture 按钮时 -> 拍摄正确图像并显示在屏幕上。
  • 如果我拍照并按“重拍”,常规相机图像将作为输入显示。

更奇怪的是:它与我使用的 iPad 无关。创建一个新的示例应用程序,它只有一个按钮,可以从上面调用代码,一切正常。

我认为这与应用程序的配置有关。因此,我检查了所有内容,但找不到可能导致此问题的任何差异。

提前感谢您的任何建议!

更新:我确实实现了 UIImagePickerControllerDelegate 以关闭 UIImagePickerController。

最佳答案

在阅读有关 UIImagePickerController 的 Apple 文档中 doc here它声明“当用户点击按钮选择新捕获或保存的图像或电影,或取消操作时,使用您的委托(delegate)对象关闭图像选择器。对于新捕获的媒体,您的然后委托(delegate)人可以将其保存到设备上的相机胶卷。对于以前保存的媒体,您的委托(delegate)人可以根据您的应用程序的目的使用图像数据。也许您需要实现 UIImagePickerContriollerDelegate 协议(protocol)方法并正确关闭现有的 UIImagePickerController 对象。参见 UIImagePickerControllerDelegate

关于ios - UIImagePickerController 显示最后一张照片而不是相机输入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19815718/

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