2010-02-22 81 views
0

我想从相机或已经保存的图像保存到iphone照片库的图像。 在这里,我实现了一个代码,但我不能在按钮上实现它,而且它的崩溃。 我对iphone编程方面很新颖。请给一些帮助。图像保存按钮点击

- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info:(id)sender{ 
    UIImage *selectedImage; 
    NSURL *mediaUrl; 

    mediaUrl = (NSURL *)[info valueForKey:UIImagePickerControllerMediaURL]; 
    if (mediaUrl == nil) 
    { 
     selectedImage = (UIImage *) [info valueForKey:UIImagePickerControllerEditedImage]; 
     if (selectedImage == nil) 
     { 
      selectedImage = (UIImage *) [info valueForKey:UIImagePickerControllerOriginalImage]; 
      NSLog(@"Original image picked."); 
     } 
     else 
     { 
      NSLog(@"Edited image picked."); 
     } 
    } 
    else 
    { 
     NSLog(@"Video picked. Not yet implemented."); 
    } 

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

    if((UIButton *) sender == savePhotoBtn) { 
     UIImageWriteToSavedPhotosAlbum(selectedImage, self, @selector(image:didFinishSavingWithError:contextInfo:), nil); 
    } 
} 

回答

0

雅我的功能是越来越exectuted ......我的printf statment检查..

/* Globaly declared */ 
NSDictionary *info1; 
UIImagePickerController * picker; 

-(IBAction) savePhoto:(id) sender 
{ 
    UIImage *selectedImage; 
    NSURL *mediaUrl; 
    mediaUrl = (NSURL *)[info1 valueForKey:UIImagePickerControllerMediaURL]; 
    if (mediaUrl == nil) 
    { 
     selectedImage = (UIImage *) [info1 valueForKey:UIImagePickerControllerEditedImage]; 
     if (selectedImage == nil) 
     { 
      selectedImage = (UIImage *) [info1 valueForKey:UIImagePickerControllerOriginalImage]; 
      NSLog(@"Original image picked."); 
     } 
     else 
     { 
      NSLog(@"Edited image picked."); 
     } 
    } 
    else 
    { 
     NSLog(@"Video picked. Not yet implemented."); 
    } 
    picker.allowsImageEditing = YES; 
    //if((UIButton *) sender == savePhotoBtn) { 
    UIImageWriteToSavedPhotosAlbum(selectedImage, self, @selector(image:didFinishSavingWithError:contextInfo:), nil); 
    //} 
    printf(" %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% "); 
}