简体   繁体   中英

[iOS][Objective-c] imagepicker to next controller

- (IBAction)sendPhoto:(id)sender {
    [DinsowMiniLogger log:@"Image: %@", self.pickedImage];
    UIImagePickerController *picker = [[UIImagePickerController alloc] init];
    picker.delegate = self;
    picker.sourceType = UIImagePickerControllerSourceTypePhotoLibrary;
    [self presentViewController:picker animated:YES completion:nil];
}

- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info {
    [picker dismissViewControllerAnimated:YES completion:nil];
    [[self navigationController] dismissViewControllerAnimated:YES completion:nil];
    self.selMediaItem = [self.storyboard instantiateViewControllerWithIdentifier:@"selectmedia"];
    [self presentModalViewController:self.selMediaItem animated:YES];
    self.selMediaItem.imgMediaSelect.image = [info objectForKey:UIImagePickerControllerOriginalImage];
}

I want to send image to next controller but error

Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[UINavigationController imgMediaSelect]: unrecognized selector sent to instance 0x15979a00'

UPDATE i move uiimagepickercontroller method to next controller

Your didFinishPickingMediaWithInfo method should be like below. You are dismissing your view before you perform any action.

- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info {
    UIImage *browsed_Image =  [info objectForKey:UIImagePickerControllerOriginalImage];
   [picker dismissViewControllerAnimated:YES completion:^{
       if (browsed_Image) {
           // You can store here your image in UIImage object or directly pass it to next controller.
           [btn_UserImage setImage:browsed_Image forState:UIControlStateNormal];
        }
    }];
}

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM