-1

我在 ios 4.1 中构建了一个应用程序,但现在我使用 ios 6 来构建它,但是 pushviewcontroller 和方向方法存在问题。那么谁能告诉我 ios 6 带来了哪些变化?

4

1 回答 1

0

我认为最好的解决方案是坚持苹果官方文档。因此,据我所知,我使用以下方法,并且在 iOS 5 和 6 上一切都运行良好。在您的所有 ViewControllers 中覆盖以下方法。

- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
{
    // Return YES for supported orientations
    return UIInterfaceOrientationIsPortrait(interfaceOrientation);
}

iOS 6 的方法,第一个方法返回支持的方向掩码(如其名称所示),您可以将其更改为横向或最适合您的套件。

-(NSInteger)supportedInterfaceOrientations{

    return UIInterfaceOrientationMaskPortrait; //UIInterfaceOrientationMaskPortrait or LandscapeLeft ... 
}

第二个就是告诉您的 VC,当 VC 将要显示时,哪个是首选界面方向。

- (UIInterfaceOrientation)preferredInterfaceOrientationForPresentation
{
    return UIInterfaceOrientationPortrait; //tells your VC in which orientation it should be presented, if you set Porttrait it would be in Portrait or otherwise ...
}

此解决方案有效

于 2013-01-09T11:11:01.683 回答