Is there any good way to set
UIImagePicker to landscape orientation? I tried to call
presentModalViewController like following,
[self presentModalViewController:picker animated:YES]; [[UIApplication sharedApplication] setStatusBarOrientation: UIInterfaceOrientationLandscapeRight animated: NO ];
However, the video duration view (00:00) on the right corner didn't rotate as orientation changed.
Unfortunately, according to the documentation, the image picker only supports portrait mode.
Apple doesn't support landscape for camera view. If you want anything shown as customised then add overlay view on it & transform that view to look as landscape view. @Note:-overlay is also add as portrait thats why transformation needed.
I was able to create landscape camera view using the following code:
[self.view insertSubview:self.imagePicker.view atIndex:0]; self.imagePicker.view.transform = CGAffineTransformScale ( CGAffineTransformTranslate( CGAffineTransformMakeRotation(M_PI/2), -90, -15), 1.2,1.2) ;
Note that I am directly adding the imagePicker's view to the current view, not calling it as a modal.
self.imagePicker.view.transform seems to respond as expected to all
CGAffineTransform function calls, though I can't speak to whether or not Apple approves of this method.