0

我的 UIViewController 中有以下代码,我正在设备和模拟器中测试 iOS 5。

- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
{
    if (IS_IPHONE){
        return interfaceOrientation != UIInterfaceOrientationPortraitUpsideDown;
    } else {
        return YES;
    }
}

我放了一个断点,它确实被调用了,但是它仍然旋转到横向。为什么是这样?

4

2 回答 2

2

因为你告诉它这样做。return interfaceOrientation != UIInterfaceOrientationPortraitUpsideDown;意味着您要自动旋转到除纵向倒置之外的每个方向,包括横向。对于 iPad,即使没有这个约束,它也会自动旋转到任何方向。

(你应该对文档有新鲜感......)

于 2012-10-11T19:05:06.127 回答
1

改用这个

return (interfaceOrientation == UIInterfaceOrientationPortrait);

于 2012-10-11T19:04:54.337 回答