如何在基于UIImagePicker的应用程序中实现相机曝光控制?

时间:2010-10-01 14:42:34

标签: iphone uiimagepickercontroller avfoundation

我有一个基于UIImagePicker的应用程序,可以通过自定义叠加来控制相机,以处理抬头显示和数字缩放。

我想像普通的iPhone相机应用程序一样添加“触摸来调整曝光”。当您放大时,您最终希望根据“大图片视图”之外的其他内容更改曝光。

UIImagePicker似乎没有这样做的工具......这都是自动的。如果我使用自定义叠加层,则触摸事件将被UIImagePicker忽略。

我试图将UIImagePicker子类化,并在他们出现后将我的触摸事件传递给Super ......没有运气。

我目前正在研究AVFoundation框架,因为它的AVCaptureSession支持基于某个点设置曝光。我可以抛弃我现有的代码并用这些工具替换它,但在我这样做之前,我想我会问我是否错过了一个更简单的选项。

是的,我知道WWDC关于AVFoundation的教程。如果调整UIImagePicker是不可能的,我会走那条路。

2 个答案:

答案 0 :(得分:1)

从iOS 4.3开始,Apple现在将触摸事件传递给相应的摄像机控制器。 结果是曝光和对焦控制现在响应自定义叠加层上的触摸事件。这是太棒了;谢谢Apple。有趣的是,我在任何发行说明或文档中都找不到对此新功能的引用。

答案 1 :(得分:0)

UIImagePickerController不提供曝光控制。你需要使用AVFoundation。