iPhone UIImagePicker Camera in Landscape Orientation

Is there any good way to set UIImagePicker to landscape orientation? I tried to call setStatusBarOrientation after 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.

人吐槽 人点赞



用户名: 密码:
验证码: 匿名发表


查看评论:iPhone UIImagePicker Camera in Landscape Orientation