2

我在 ios 5 的 ipad 中从 UIImagePickerController 中选择图像时遇到问题。相同的代码在 ios 4 中完美运行。

那么问题是什么?任何人都可以帮助我如何在 ios 5 中使用 UIImagePickerController 吗?UIImagePickerController 的 ios 4 和 ios 5 之间有什么区别吗?

以下是该问题的代码。

-(IBAction)selectExitingPicture:(id)sender
{

    if ([popoverController isPopoverVisible]) {
        [popoverController dismissPopoverAnimated:YES];
        [popoverController release];
    } else {
        if ([UIImagePickerController isSourceTypeAvailable:
             UIImagePickerControllerSourceTypePhotoLibrary])
        {
            UIImagePickerController *imagePicker =
            [[UIImagePickerController alloc] init];
            imagePicker.delegate = self;
            imagePicker.sourceType =
            UIImagePickerControllerSourceTypePhotoLibrary;
            imagePicker.mediaTypes = [NSArray arrayWithObjects:
                                      (NSString *) kUTTypeImage,
                                      nil];
            imagePicker.allowsEditing = NO;

            popoverController = [[UIPopoverController alloc]
                                      initWithContentViewController:imagePicker];

            popoverController.delegate = self;


            [popoverController presentPopoverFromRect:CGRectMake(280, 700, 320, 400) inView:self.view permittedArrowDirections:UIPopoverArrowDirectionDown animated:YES];

            [imagePicker release];

        }
    }

}


-(void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info
{
    [popoverController dismissPopoverAnimated:true];


    NSString *mediaType = [info
                           objectForKey:UIImagePickerControllerMediaType];
    [self dismissModalViewControllerAnimated:YES];
    if ([mediaType isEqualToString:(NSString *)kUTTypeImage]) {

    UIImage *image = [info objectForKey:UIImagePickerControllerOriginalImage];

        selectedImageView.image = image;

    }
    else if ([mediaType isEqualToString:(NSString *)kUTTypeMovie])
    {
        // Code here to support video if enabled
    }
}

在 imagePickerController:didFinishPickingMediaWithInfo 方法中从 UIImagePicker 选择图像后,我收到图像引用 0*0

谢谢

4

1 回答 1

1

试试这个

       -(IBAction)buttonpressed{ 
        UIImagePickerController *anImagePickerController = [UIImagePickerController new];
        anImagePickerController.delegate = self;
        anImagePickerController.sourceType = UIImagePickerControllerSourceTypeCamera;

        UIImageView *anImageView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"overlay_320x427.png"]];
        anImageView.frame = CGRectMake(0, 1, 320, 427);
        anImageView.hidden = YES;
        anImagePickerController.cameraOverlayView = anImageView;

        [self presentModalViewController:anImagePickerController animated:YES];
        [anImagePickerController release];

        [NSTimer scheduledTimerWithTimeInterval:0.1
                                         target:self
                                       selector:@selector(timerFireMethod:)
                                       userInfo:anImageView
                                        repeats:NO];
        [anImageView release];
    }
    - (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingImage:(UIImage *)image editingInfo:(NSDictionary *)info {




 /* Do something here*/
        [self dismissModalViewControllerAnimated:YES];




    }

    - (void)imagePickerControllerDidCancel:(UIImagePickerController *)picker {
        [self dismissModalViewControllerAnimated:YES];
    }
于 2011-12-26T12:07:16.993 回答