web-dev-qa-db-fra.com

La création d'un format d'image avec un type inconnu est une erreur Objective-C Xcode 8

Tout en choisissant une image dans le sélecteur d'images dans iOS 10Objective-C et Xcode 8. Je reçois une erreur - 

La création d'un format d'image avec un type inconnu est une erreur

.

C'était ok pour la version précédente.

Voici mon code:

UIImagePickerController* imgPicker=[[UIImagePickerController alloc] init];
imgPicker.sourceType = UIImagePickerControllerSourceTypePhotoLibrary;
imgPicker.delegate = self;
[self presentViewController:imgPicker animated:YES completion:nil];

et la méthode déléguée pour recevoir l’image est ..

- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info {
       [picker dismissViewControllerAnimated:YES completion:NULL];
       UIImage *myImage = [info objectForKey:UIImagePickerControllerOriginalImage];
}

J'ai aussi essayé d'autres fonctions de délégué.

 -(void) imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary<NSString *,id> *)info{
}

mais l'erreur ne va pas.

Je ne suis pas sûr que ce soit le bug de Xcode 8?
Si quelqu'un rencontre le problème et le résout, aidez-nous à le résoudre.

18
riaz hasan

C'est un bug. C'est juste un faux avertissement. Aucune mauvaise chose ne se passe pour le fonctionnement de l'application, alors ignorez l'avertissement.

34
matt

je passe par le document Apple et utilise ce

UIImage *chosenImage = info[UIImagePickerControllerOriginalImage];

dans didFinishPickingMediaWithInfo method.

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

UIImage *chosenImage = info[UIImagePickerControllerOriginalImage];  
imageViewPreview.image = chosenImage;  

[picker dismissViewControllerAnimated:YES completion:NULL];     

}

espérons cette aide!

4
Dharmesh Mansata
- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary<NSString *,id> *)info
{
  UIImage *tempImage = [info objectForKey:UIImagePickerControllerEditedImage];
  UIGraphicsBeginImageContext(tempImage.size);
  [tempImage drawInRect:CGRectMake(0, 0, tempImage.size.width, tempImage.size.height)];
  UIImage *image = [UIImage imageWithCGImage:[UIGraphicsGetImageFromCurrentImageContext() CGImage]];

  [self.myimageview setImage:image];
  UIGraphicsEndImageContext();
  [picker dismissViewControllerAnimated:YES completion:nil];
}
0
clody