应用程序仅对Portrait启用,但UIImagePickerController在iOS6中旋转

Dej*_*ell 6 iphone cocoa-touch objective-c uiimagepickercontroller ios

请注意以下答案 - 不适用于iOS6,所以我仍然需要一个答案!

我的应用程序仅在纵向模式下启用.

但是,如果我将UIImagePickerController作为子视图嵌入并旋转设备,则顶部和底部栏位于同一位置,但UIImagePickerController会旋转.

如何防止它旋转?

这是代码:

    [self.view.window addSubview:self.imagePickerController.view];
    self.imagePickerController.showsCameraControls = NO; 
    self.imagePickerController.view.frame = CGRectMake(0, 90, 320, 320);
    self.imagePickerController.allowsEditing = NO;
Run Code Online (Sandbox Code Playgroud)

EDITED

我正在使用iOS6,其中shouldAutorotate不会被调用

Anu*_*yal 12

UIImagePickerController在您的课程中添加此类别,

@interface UIImagePickerController(Nonrotating)
- (BOOL)shouldAutorotate;
@end

@implementation UIImagePickerController(Nonrotating)

- (BOOL)shouldAutorotate {

  return NO;
}

@end
Run Code Online (Sandbox Code Playgroud)