2012-03-23 4 views
1

Ich hatte dies funktioniert in einem alten Code, den ich nicht am Ende benutze ... jetzt versuche ich es wieder und es funktioniert nicht. Ich bin mir nicht sicher, was falsch ist. Ich möchte, dass der Benutzer ein Bild auswählt und es dann in imageView1 zur Anzeige zur Verfügung stellt. Ich schätze die Hilfe. VersuchenUIImagepickercontroller Bild nicht auswählen

- (IBAction)pushPick 
{ 
    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 { 
    [picker.parentViewController dismissModalViewControllerAnimated:YES]; 
    imageView1.image = image; 
} 

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

Antwort

6

- (void) imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info 
{ 
    UIImage *image = [info objectForKey:@"UIImagePickerControllerOriginalImage"]; 
    imageView1.image = image; 
    [picker release]; 
    [self dismissModalViewControllerAnimated:YES]; 

} 

Und stellen Sie sicher, dass der View-Controller UIImagePickerControllerDelegate reagiert.

imagePickerController: didFinishPickingImage: Bearbeitungsinfo: war in iOS 3.0 veraltet. Diese

+0

UIImage * image = [info objectForKey: UIImagePickerControllerOriginalImage]; schien es zu tun ... danke. –

0

ist, wie ich dies tun:

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

{ bgImage.image = [info objectForKey: UIImagePickerControllerEditedImage];

UIGraphicsBeginImageContextWithOptions(CGSizeMake(128, 128), YES, 1.0); 

[bgImage.image drawInRect:CGRectMake(0,0,128,128)]; 
UIImage *newImage = UIGraphicsGetImageFromCurrentImageContext(); 
UIGraphicsEndImageContext(); 

NSData *imageData = UIImageJPEGRepresentation(newImage, 1.0); 
NSArray *path = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,NSUserDomainMask,YES); 
NSString *documentsFolder = [path objectAtIndex:0]; 

NSString *tmpPathToFile = [[NSString alloc] initWithString:[NSString stringWithFormat:@"%@/specificImagedName.jpg", documentsFolder]]; 

if([imageData writeToFile:tmpPathToFile atomically:YES]){ 
    //NSLog(@"write succesful"); 
} 
/////////////////////////////////////////// 

[po dismissPopoverAnimated:YES]; 
[picker release]; 
[tmpPathToFile release];} 

Es generiert eine JPG-Datei zum Dokumentenordner Ihrer App. Hoffe es hilft ..