【问题标题】:using UIImagepickerController cameraoverlayview to take picture?使用 UIImagepickerController cameraoverlayview 拍照?
【发布时间】:2010-11-10 05:19:17
【问题描述】:

我正在使用 UIImagepickerController 从相机拍照..我通过使用 cameraoverlayview 属性在相机视图上使用我自己的视图...当用户单击自定义视图中的按钮时,我想从相机拍照...我正在使用以下代码

 - (void)viewDidLoad {

imagePickerController = [[UIImagePickerController alloc] init];
    imagePickerController.sourceType =  UIImagePickerControllerSourceTypeCamera;
    [self presentModalViewController:imagePickerController animated:YES];   
    imagePickerController.showsCameraControls=NO;

imagePickerController.cameraOverlayView = self.customView;

}

- (IBAction) takePicture
{
    [imagePickerController takePicture];
}

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

    NSString *mediaType = [info objectForKey:UIImagePickerControllerMediaType];

    imageView.image = [info objectForKey:@"UIImagePickerControllerOriginalImage"];

[picker dismissModalViewControllerAnimated:YES];

}

- (void)imagePickerControllerDidCancel:(UIImagePickerController *)picker
{
    [self dismissModalViewControllerAnimated:YES];
}

但是当我运行这段代码时它给了我错误

错误:FigCreateCGImageFromJPEG 返回 -12905。输入(空)为 773625 字节。

我还收到内存使用级别 2 和级别 1 的警告

并且 imageView 中没有显示图像.. 谁能帮助我我可能做错了什么? 顺便说一句,我正在使用安装了 iOS4.1 的 iPhone 3G

【问题讨论】:

  • 不确定,但请查看 UIImage 与 UIImageView。我怀疑这可能与您的[info objectforKey: ... ] 通话有关。
  • 实际上 didFinishPickingMediaWithInfo 甚至没有被调用..我已经包含了它的委托

标签: iphone ios4 uiimagepickercontroller


【解决方案1】:

UIImagePickerControllerOriginalImage 是一个符号(NSString * 常量),您不能假设它的值。按原样使用,不带引号。除此之外,如果您正确地保留并创建了选择器和图像视图,它应该可以工作。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-04-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-10-31
    相关资源
    最近更新 更多