我有基于导航的应用程序,当我点击根视图中的任何行时,下一个视图应该以横向模式进入。
我无法找到实现此方法的正确方法。我试过的是:
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {
return UIInterfaceOrientationIsLandscape(interfaceOrientation);
}
但这不起作用。视图应仅在横向模式下打开(而不是在用户旋转时)。
答案 0 :(得分:2)
我的沙盒应用: https://github.com/comonitos/programatical_device_orientation
解决方案很简单:
接口(h文件)中的:
BOOL rotated;
实现中的(m文件): 1.重写
-(BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
{
return rotated;
}
2调用[自我设置]
-(void) setup {
rotated = YES;
[[UIDevice currentDevice] setOrientation:UIDeviceOrientationLandscapeLeft];
rotated = NO;
}
答案 1 :(得分:0)
你可以强制你的设备改变方向.......在视图中使用魔术线将出现
[[UIDevice currentDevice] setOrientation:UIDeviceOrientationLandscapeRight];
All the Best ..
答案 2 :(得分:0)
尝试在横向模式及其视图控制器中设计视图,并在
中设计- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {
.....
}
纵向方向返回否,横向方向返回YES 这将以横向模式显示您的视图。
答案 3 :(得分:0)
以下是基于横向视图的应用中的一些代码:
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation{
if (interfaceOrientation == UIInterfaceOrientationLandscapeRight || interfaceOrientation == UIInterfaceOrientationLandscapeLeft){
return YES;
}
else {
return NO;
}
}
将其置于基于横向的视图控制器中,使其仅以横向模式显示,并在横向左侧和横向右侧之间切换。你还需要你的xib是基于风景的。