Objective c 无法从纵向视图跳转到横向视图

Objective c 无法从纵向视图跳转到横向视图,objective-c,cocoa-touch,uiview,rotation,Objective C,Cocoa Touch,Uiview,Rotation,各位。我有两种观点。第一个视图仅支持横向,第二个视图支持所有方向。但是,当第二个视图是纵向视图并且按下按钮时,它将跳转到第一个纵向视图,即横向视图 我在第一个ViewController中添加了以下两种方法 - (BOOL)shouldAutorotate { return YES; } -(NSUInteger)supportedInterfaceOrientations { return UIInterfaceOrientationMaskLandscapeLeft

各位。我有两种观点。第一个视图仅支持横向,第二个视图支持所有方向。但是,当第二个视图是纵向视图并且按下按钮时,它将跳转到第一个纵向视图,即横向视图

我在第一个ViewController中添加了以下两种方法

- (BOOL)shouldAutorotate
{
        return YES;
}

-(NSUInteger)supportedInterfaceOrientations
{
    return UIInterfaceOrientationMaskLandscapeLeft | UIInterfaceOrientationMaskLandscapeRight;
}
我想知道是否有人能帮助我,因为这个问题困扰了我很长时间。
谢谢转发

我从未在应用程序中测试过这一点,但尝试使用:

[[UIDevice currentDevice] setOrientation:UIDeviceOrientationPortrait];

我不确定我是否正确理解了你。到目前为止,我得到的是,您有两个viewController,第一个viewController只支持横向,而第二个viewController支持所有方向。但是你在维护这个方面有问题。检查您是否在代码中实现了这一点,如果您仍然发现任何问题,请返回,如果问题解决了,请接受答案并投票表决;:-

1您的第一个viewController应具有以下功能:- //对于iOS 6

-(BOOL)shouldAutorotate{
    return YES;
}

-(NSUInteger)supportedInterfaceOrientations{
    return UIInterfaceOrientationMaskLandscape;
}
-(BOOL)shouldAutorotate{
    return YES;
}

-(NSUInteger)supportedInterfaceOrientations{
    return UIInterfaceOrientationMaskPortrait;
}
对于
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
{
    return (interfaceOrientation == UIInterfaceOrientationLandscapeRight || interfaceOrientation == UIInterfaceOrientationLandscapeLeft);

}
2您的第二个viewController应具有以下功能:- 对于iOS 6

-(BOOL)shouldAutorotate{
    return YES;
}

-(NSUInteger)supportedInterfaceOrientations{
    return UIInterfaceOrientationMaskLandscape;
}
-(BOOL)shouldAutorotate{
    return YES;
}

-(NSUInteger)supportedInterfaceOrientations{
    return UIInterfaceOrientationMaskPortrait;
}
对于
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
{
    return (interfaceOrientation == UIInterfaceOrientationPortrait);
}

它警告我:“UIDevice”可能不会响应“setOrientation”…我尝试将其修复到[UIDevice currentDevice]。orientation=UIDeviceOrientation和scapeLeft;我被分配到readonly属性时出错…你在为什么iOS开发?一个iPad应用程序。自转问题困扰了我很长时间,我几乎要为之疯狂了……我试过你的方法,但不幸的是,它不起作用。当我从第二个视图纵向跳回到第一个视图时,设备是纵向的,而视图是横向的…我想你必须在纵向模式下有第一个视图元素。??你有吗?给我你的电子邮件Id我已经根据你的要求为你制作了一个应用程序。是的,请接受我的回答并投赞成票。我确实想投你的赞成票,但是,我是这里的一名新生,没有足够的声誉投赞成票。对不起。我的电子邮件是995967851@qq.com. 非常感谢您的耐心。现在是fyn,如果有帮助,您可以接受答案。检查您的邮件。