Iphone 界面定向旋转
我正在开发一个代码,其中初始视图控制器是Iphone 界面定向旋转,iphone,objective-c,ios,ios5,ios4,Iphone,Objective C,Ios,Ios5,Ios4,我正在开发一个代码,其中初始视图控制器是scapeview。当按下该视图控制器中的按钮时,下一个视图控制器应为纵向。我的根视图控制器是一个导航控制器 这是一个故事板应用程序 在第一个根视图控制器和 第二视图控制器的UIInterfaceOrientationPortrait。但旋转一开始并不起作用。我们必须旋转视图才能将其更改为正确旋转 如何解决此问题?当第二个视图控制器加载时,在视图加载或方向更改事件接收方法中添加此行: [[UIApplication sharedApplication] s
scape
view。当按下该视图控制器中的按钮时,下一个视图控制器应为纵向
。我的根视图控制器
是一个导航控制器
这是一个故事板应用程序
在第一个根视图控制器和
第二视图控制器的UIInterfaceOrientationPortrait。但旋转一开始并不起作用。我们必须旋转视图才能将其更改为正确旋转
如何解决此问题?当第二个
视图控制器
加载时,在视图加载
或方向更改事件接收方法中添加此行:
[[UIApplication sharedApplication] setStatusBarOrientation:UIInterfaceOrientationPortrait];
编辑:
确定,然后在要以纵向显示的CiewController中更新方法shouldAutorotateToInterfaceOrientation,如下所示:
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
{
// Return YES for supported orientations
return UIInterfaceOrientationIsPortrait(interfaceOrientation);
}
还要确保在nib文件中,在属性检查器中将方向设置为纵向
它将为您完成这项工作。这里更改设备方向的一种方法是
-(void)viewWillAppear:(BOOL)animated
{
[[UIDevice currentDevice] setOrientation:UIInterfaceOrientationLandscapeRight];
}
在这里,您要在哪个类中更改方向,然后在视图中写入该行将显示:
方法
此外,为了删除UIDevice的警告,只需在.m文件中声明以下代码
@interface UIDevice (MyPrivateNameThatAppleWouldNeverUseGoesHere)
- (void) setOrientation:(UIInterfaceOrientation)orientation;
@end
在这里,该代码定义在@implementation文件之上
希望这能帮助你
:)我添加了此选项,使设备旋转,但视图控制器不旋转:(你检查了你的nib文件的方向吗?完成了Kanan,Parsi的代码工作了。感谢你的支持和时间。抱歉!但这显示了错误。错误是自动引用计数问题:例如,接收方类型“UIDevice”消息没有声明带有选择器“setOrientation:”的方法,这真是太棒了e代码很有魅力…谢谢。。。