您好我有以下情况:
1)ViewControllerA>>推送ViewControllerB
2)在ViewControllerB中我有3个按钮,分别是AUTO,LANDSCAPE,PORTRAIT。
3)如果用户点击AUTO按钮,特定视图控制器应始终在PORTRAIT + LANDSCAPE模式下可见,具体取决于方向模式
4)如果用户点击LANDSCAPE按钮,则无论设备的方向如何,特定视图控制器应始终在LANDSCAPE模式下可见。
5)如果用户点击PORTRAIT,无论设备的方向如何,特定视图控制器应始终在PORTRAIT模式下可见。
在特定视图控制器上强制定位
我正在使用适用于iPad和iPhone的iOS 7.0。
尝试了Stack Overflow上的许多链接,但都给出了6.0的建议,而这些建议在7.0中无法解决
有人可以建议我如何实现这个目标。
答案 0 :(得分:1)
这是有效但不完美的:
仍然需要检查它是否是私有API,因为这可能会导致问题..
嘿RAJA我之前已经尝试过这个链接:Force Landscape Orientation on iOS 6 in Objective-C
但这也不完美.... [肯定会尝试改变一些代码可能会起作用]
答案 1 :(得分:1)
试试这个..
在Appdelegate中将property orientationStyle创建为nsinteger,并根据按钮单击从ViewControllerB更改orientationStyle的值。
在Appdelegate中添加以下方法。
- (NSUInteger)application:(UIApplication *)application supportedInterfaceOrientationsForWindow:(UIWindow *)window
{
switch (orientationStyle) {
case 0:
return UIInterfaceOrientationMaskPortrait;
break;
case 1:
return UIInterfaceOrientationMaskLandscape;
break;
case 2:
return UIInterfaceOrientationMaskAll;
break;
default:
return UIInterfaceOrientationMaskAll;
break;
}
}
希望它能帮到你