0

我希望用户在按下按钮时从 iphone 中选择图像(通过操作:buttonClicked),并且我希望在我拥有的图像视图上查看该图像(imageAddPicture 是图像视图的名称)

我找到了很多信息,但是当我使用此代码时,出现以下错误:

self, release, picker.sourceType = (sender == buttonClicked),...

有人能帮助我吗?(我是 stackoverflow.com 的新手,但我真的需要帮助,我会尽力帮助其他人)这是我使用的代码:

-(IBAction)buttonClicked:(id)sender
{
    UIImagePickerController *picker = [[UIImagePickerController alloc] init];
    picker.delegate = self;
    picker.allowsImageEditing = YES;
    picker.sourceType = (sender == buttonClicked) ?    UIImagePickerControllerSourceTypeCamera :
    UIImagePickerControllerSourceTypeSavedPhotosAlbum;
    [self presentModalViewController: picker animated:YES];
    [picker release];
}
-(IBAction)selectExitingPicture
{
    if([UIImagePickerController isSourceTypeAvailable:
        UIImagePickerControllerSourceTypePhotoLibrary])
    {
        UIImagePickerController *picker= [[UIImagePickerController alloc]init];
        picker.delegate = self;
        picker.sourceType = UIImagePickerControllerSourceTypePhotoLibrary;
        [self presentModalViewController:picker animated:YES];
        [picker release];
    }
}

-(void)imagePickerController:(UIImagePickerController *)picker
      didFinishPickingImage : (UIImage *)image
                 editingInfo:(NSDictionary *)editingInfo
{
    imageAddPicture.image = image;
    [picker dismissModalViewControllerAnimated:YES];
}
-(void)imagePickerControllerDidCancel:(UIImagePickerController *)  picker
{
    [picker dismissModalViewControllerAnimated:YES];
}
4

1 回答 1

0

您正在使用自动引用计数来处理您的项目。所以你不需要释放对象。只需删除此行。孩子:)

picker.sourceType = (sender == buttonClicked) ?    UIImagePickerControllerSourceTypeCamera :
    UIImagePickerControllerSourceTypeSavedPhotosAlbum;

这条线应该是

picker.sourceType = (sender == buttonClicked:) ?    UIImagePickerControllerSourceTypeCamera :
    UIImagePickerControllerSourceTypeSavedPhotosAlbum;
于 2012-10-24T09:05:42.660 回答