16 votes

Les orientations prises en charge n'ont pas d'orientation commune avec l'application et la réponse de shouldAutorotate est OUI.

* Ma vue est en mode paysage, j'enregistre l'image et je veux la récupérer pour cela, mon code est le suivant et j'obtiens l'erreur "Terminating app due to uncaught exception 'UIApplicationInvalidInterfaceOrientation', reason : 'Supported orientations has no common orientation with the application, and shouldAutorotate is returning YES'". * que puis-je faire pour l'iphone ?

        `- (void)imagePickerControllerDidCancel:(UIImagePickerController *)picker {

         [self dismissModalViewControllerAnimated:YES];
         [picker release];

              }
             - (void)imagePickerController:(UIImagePickerController *)picker 

                didFinishPickingMediaWithInfo:(NSDictionary *)info {

            [picker dismissModalViewControllerAnimated:NO];

                imageDoodle.image = [info objectForKey:@"UIImagePickerControllerMediaMetadata"];

                 }

               -(IBAction)loadfromalbumclicked:(id)sender

                 {

                UIImagePickerController * picker = [[UIImagePickerController alloc] init];

                picker.delegate = self;

                 picker.allowsEditing=NO;

        picker.sourceType = UIImagePickerControllerSourceTypeSavedPhotosAlbum;

               // self.modalTransitionStyle=UIModalTransitionStyleFlipHorizontal;

              [self presentModalViewController:picker animated:YES];
               }

              -(IBAction)savePrint{
//Save image to iOS Photo Library

                 UIImageWriteToSavedPhotosAlbum(imageDoodle.image, nil, nil, nil);
//Create message to explain image is saved to Photos app library
                 UIAlertView *savedAlert = [[UIAlertView alloc] initWithTitle:@"Saved"  

                message:@"Your picture has been saved to the photo library, view it in the 

               Photos app." delegate:self cancelButtonTitle:@"OK" otherButtonTitles: nil];
//Display message alert
             [savedAlert show];
              }`

0voto

ZuYuan Points 2114

Pour iOS 6.0, si votre application ne supporte que le mode paysage, lorsque vous faites apparaître le UIImagePickerController, il se plante.

Ma solution consiste à ajouter la catégorie ci-dessous à UIImagePickerController :

@interface UIImagePickerController (oritation)

@end

@implementation UIImagePickerController (oritation)

- (NSUInteger)supportedInterfaceOrientations
{
    return UIInterfaceOrientationMaskLandscape;
}

@end

0voto

Joel Balmer Points 165

J'ai eu la même erreur, il se peut qu'une ou plusieurs des orientations suivantes soient en conflit :

  • Vérifiez votre -Info.plist, pour la clé "orientations d'interface supportées".
  • Vérifiez votre volet Résumé, en cliquant sur votre application dans le navigateur du projet.
  • Comme d'autres l'ont mentionné, vérifiez ce que la méthode supportedInterfaceOrientations renvoie.

J'ai résolu le mien en définissant explicitement des clés distinctes "orientations de l'interface supportées (iPad)" et "orientations de l'interface supportées (iPhone)" dans le fichier -Info.plist, car je voulais des orientations différentes pour les différents appareils.

Bonne chance !

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X