【问题标题】:UIImagePickerController Delegate is not doing what I needUIImagePickerController 代表没有做我需要的
【发布时间】:2013-10-04 09:54:09
【问题描述】:

我很难找到代表。

你知道我们现在在UIImagePickerControllerDelegate 中只有 2 个委托方法。

- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info;
- (void)imagePickerControllerDidCancel:(UIImagePickerController *)picker;

问题是imagePickerController:didFinishPickingMediaWithInfo:info 只会在捕获尝试保存图像时激活。

我需要做的是在按下“捕获”按钮时更改cameraDevice

例如,如果默认cameraDevice是Front,当按下“捕获”按钮时,它实际上会将其cameraDevice更改为Rear并拍照。

imagePickerController:didFinishPickingMediaWithInfo:info 在拍照后被调用,所以将这个语句放在委托方法中是行不通的。

picker.cameraDevice = UIImagePickerControllerCameraDeviceRear;

我需要找到/实现能够真正实现这一点的委托/方法。 有人可以帮帮我吗?

【问题讨论】:

    标签: objective-c camera uiimage uiimagepickercontroller photo


    【解决方案1】:

    您无法使用 Apple 提供的默认相机界面执行此操作。您将必须实现自己的控件。您可以在提供的相机 UI 之上添加叠加视图并对其进行扩展,但您不能更改现有控件。

    【讨论】:

    • 我想这意味着我可能必须翻转 cameraDevice 并通过自定义按钮 IBAction 方法对其进行屏幕截图并裁剪图像或其他东西.. !! :(
    • 我想我会使用 AVCaptureSession API,但我看不出我是否可以控制使用此 API 将“cameraDevice”更改为前置或后置?是否有任何其他 API 提供更改“cameraDevice”?在“UIImagePickerController”旁边?
    猜你喜欢
    • 2017-08-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-07-06
    相关资源
    最近更新 更多