Iphone开发viewcontroller肖像景观没有自动旋转

时间:2011-06-27 11:22:57

标签: iphone objective-c mobile uiviewcontroller autorotate

我有一个viewcontroller,它正在推动另一个应该处于横向模式的vc,但是当推动它时它不会自动旋转到横向。仍在画像中。

- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
{

    if (interfaceOrientation == UIInterfaceOrientationLandscapeLeft || interfaceOrientation == UIInterfaceOrientationLandscapeRight) {
        return YES;
    }

    return NO;
}

当弹出vc并返回第一个控制器时,一切都很完美,它只能以纵向模式显示。

我可以通过旋转手机/模拟器让第二个vc旋转,然后坚持自动旋转景观。然后在弹出时也完美,返回到肖像模式。

那么有没有办法可以将界面旋转到景观。尝试过使用

[[UIApplication sharedApplication] setStatusBarOrientation:UIInterfaceOrientationLandscapeRight animated:NO];

但没有取得很大成功。弹出状态栏然后卡在横向上。

1 个答案:

答案 0 :(得分:1)

viewDidLoad方法中使用它,它应该可以正常工作

[UIApplication sharedApplication].statusBarOrientation = UIInterfaceOrientationLandscapeRight;
CGAffineTransform rotate = CGAffineTransformMakeRotation(M_PI_2);
[self.view setTransform:rotate];

CGRect contentRect = CGRectMake(0, 0, 480, 320); 
self.view.frame = contentRect; 
[self.view setCenter:CGPointMake(160.0f, 240.0f)];