Crash sur la présentation de UIImagePickerController sous iOS 6.0

Mon application ne supporte paysage via le supportedInterfaceOrientation propriétés.

À l'aide d'un iOS antérieures à iOS 6, mon application peut charger avec succès une instance de UIImagePickerController via presentViewController:animated:completion: même si le UIImagePickerController lui-même prend uniquement en charge le mode portrait.

Le sélecteur d'images simplement en se présentait, à côté de l'utilisateur. L'utilisateur fait pivoter le téléphone, cueillis à leur image, et alors a tourné le dos au paysage.

Sous iOS 6.0, appelant presentViewController:animated:completion: avec le UIImagePickerController exemple bloque l'application. Je ne peux empêcher la collision par l'ajout de portrait options à mon supportedInterfaceOrientation propriétés.

Cependant, l'exploitation en mode portrait n'a vraiment pas de sens pour mon application. J'avais pensé que je pourrais utiliser shouldAutorotateToInterfaceOrientation pour permettre à l'application d'aider "portrait", mais seulement être autorisé à tourner à portrait dans cette vue. Mais maintenant que la méthode est obsolète, et je ne peux pas utiliser la même technique avec shouldAutorotate.

Quelqu'un a une idée comment je peux contourner ce problème sous iOS 6.0?

  • BTW, comme je l'ai été de l'enquête sur ce, j'ai compilé et exécuté l'exemple de code "Popovers" et il exécute parfaitement dans toutes les orientations sous Xcode 4.5 et iOS 6 Simulateur, donc je pense que c'est un bug dans UIImagePicker lors de la pris en charge de l'orientation du masque n'est pas Tout. La planification de fichier d'un bug si je peux en quelque sorte le prouver 😉
  • Veuillez voir ma réponse pour les explications de ce bug
  • Beaucoup de gens sont à l'aide de la solution de sous-classement UIImagePickerController, ce n'est vraiment pas la façon de le faire. Je attirer votre attention sur la documentation d'Apple qui indique spécifiquement: The UIImagePickerController class supports portrait mode only. This class is intended to be used as-is and does not support subclassing veuillez consulter ma réponse ici avec une Pomme approuvé solution: stackoverflow.com/a/12575058/662605
  • Apple a corrigé ce bug dans iOS 6.1, s'il vous plaît vérifier cette réponse pour la solution de contournement: stackoverflow.com/a/12575058/662605
  • Cette réponse m'a aidé à corriger l'orientation de crash lors de la game center boîte de dialogue de connexion essayé de popup quand mon jeu était à ses débuts. Le jeu ne jamais s'est écrasé lorsque vous êtes déjà connecté à GC. Mais lorsque vous vous déconnectez à l'extérieur du jeu et de commencer le jeu, puis il a été s'écraser, La top réponse m'a aidé à le résoudre.
InformationsquelleAutor jenonen | 2012-09-20