我有两个视图,分别具有纵向和横向视图,在旋转时我想切换视图。但是在加载时它可以正常工作,但在旋转时不起作用。请致电我解决此问题

 -(void)willRotateToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation duration:(NSTimeInterval)duration
{
    if (toInterfaceOrientation == UIInterfaceOrientationPortrait || toInterfaceOrientation == UIInterfaceOrientationPortraitUpsideDown) 
    {
        self.view = self.portrait;    
    }
    else
    {
        self.view = self.landscape;
    }
}

===============>>#1 票数:0

您必须实施

- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation

您的MainViewController类中的函数,以使自动旋转工作。 在参考中查找: ViewControllers上的参考文档

您可以简单地说(支持所有方向):

- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {
    return YES;
}

===============>>#2 票数:0

假设您在项目设置中设置了受支持的方向,则可以执行以下操作:

- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {
    return YES;
}

添加此选项将授予视图控制器权限,以实际影响您将在willRotateToInterfaceOrientation中进行的更改。

另外,请尝试使用以下代码在视图之间切换:

-(void)willRotateToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation 
    duration:(NSTimeInterval)duration {
    if (toInterfaceOrientation == UIInterfaceOrientationPortrait || 
        toInterfaceOrientation == UIInterfaceOrientationPortraitUpsideDown) {
        [UIView transitionFromView:self.view
                        toView:self.portrait
                      duration:0.7 
                       options:UIViewAnimationOptionTransitionFlipFromLeft   
                    completion:^(BOOL finished){
                        //do something when done with animation
                      }]; 
    } else {
        [UIView transitionFromView:self.view
                        toView:self.landscape
                      duration:0.7 
                       options:UIViewAnimationOptionTransitionFlipFromLeft   
                    completion:^(BOOL finished){
                        //do something when done with animation
                      }];
    }
}    

  ask by crazy2431 translate from so

未解决问题?本站智能推荐:

2回复

使用UINavigationBar在视图之间切换

我已经回到Hello World教程中尝试做到这一点。 由于某些原因,我似乎无法弄清楚,但是它应该是如此简单。 我想要一个UINavigationBar,在右边有一个按钮。 当用户按下此按钮时,它将通过侧滑动画将其带到第二个视图,并且在此新视图上,导航栏将显示上一个视图的后退按钮。
2回复

使用分段控件在2个视图之间切换

我制作了一个iphone应用程序,它使用分段控件在两个显示不同信息的viewController之间切换。 因此,我在第一个视图控制器中定义了一个分段控件,我在IB中将其链接到我放置在相应视图上的分段控件。 与分段控件相关的操作如下: 在这个Action中,我定义了一旦用户点击
3回复

iOS:拍照后如何在视图之间切换?

我正在编写一个应用程序,用户可以在图库中选择照片,然后发送到服务器。 这是我的代码 我希望在选择照片后,它将更改为“发送”页面。 但是,它仍然返回主页。 这些行应该在哪里?
1回复

在ModalViews之间切换

场景: 1.显示基于导航控制器的视图 2.用户选择选项 3.显示模态视图A 4.用户在模式视图A中选择另一个选项 5.隐藏模态视图A 6.显示模态视图B 请查看标记为//问题在这里的行 当我设置dismissModalViewControllerAnimate
2回复

在视图控制器之间随机切换-程序崩溃

我对编程不太了解,但是我仍然尝试做一个程序,例如您在View Controller 1中,按一个按钮,然后将您带到随机选择的View Controller,比如说View Controller 3和View Controller 3您可以按下另一个按钮,将您带到另一个随机选择的View Cont
1回复

我在Navigationcontroller中的视图控制器之间切换时发生崩溃?

首先,感谢堆栈溢出。 我在这里为我的问题找到了很多解决方案。 我的应用程序有问题,一段时间后我在导航视图控制器之间移动时崩溃了。 我访问不好 rootViewController.m中的代码 在SubCategoryViewController.m中 我希望在这
1回复

仅使用MainWindow.xib在不同的视图之间切换

大家好,很抱歉,如果我是这个xcode界面构建器的新手,但是我需要一些有关如何仅使用MainWindow.xib而不是创建更多.xib文件的方式在不同视图之间进行切换的帮助。 基本上,我有一个带有3个选项卡栏项目的选项卡栏控制器,在我的第3个选项卡栏项目上,我有一个包含UIImageView并
3回复

在肖像和风景之间切换

我采取了两种观点,一种是纵向和横向,我想在旋转角度上切换视图,但是我的代码却无法正常工作,请问我在哪里出错了,因为我是iPhone开发的新手。我还没有实现任何东西在ViewDidLoad方法中,我也应该在那里实现任何功能吗?
2回复

情节提要和切换视图?

我有一个使用情节提要面板功能的iPad应用程序,然后我有一个单独的.xib文件用于另一个视图。 我可以切换到单独的视图,也可以: 但是,当我进入第二视图并尝试返回时,我只对第一个视图控制器执行了所有相同的操作,但是它只是黑屏了: 你们有什么感想? 难道我做错了什么? 切换视
1回复

使用UIAccelerometer切换视图

嘿伙计们,对不起,如果我是这个新手,我环顾四周,但还没有找到怎么做。 基本上我想用iphone的加速度计切换视图。 例如,假设iphone掉线,动作将触发它切换到另一个视图,告诉用户手机已经掉线。 任何有关如何做的帮助将不胜感激,谢谢。