我有一个UIViewController
详细视图是从UITableView
in a UINavigationController
。在里面UIViewController
我添加了许多子视图(例如UITextView
, UIImageView
).
In iOS5
如果我的图片视图放大,我使用此代码来停止自动旋转:
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
{
// Return YES for supported orientations
if (scrollView.isZoomed) {
return NO;
}
else {
return YES;
}
}
我正在努力实现同样的目标iOS6
using :
- (BOOL)shouldAutorotate {
return FALSE;
}
然而,这个方法永远不会被调用,并且应用程序会继续旋转。
有人可以帮忙吗?
如果您有一个导航控制器来管理这些视图,应该自动旋转方法不会被调用。你必须子类化UI导航控制器和重写方法应该自动旋转 and 支持的间隔方向.
来自文档:
现在,iOS 容器(例如 UINavigationController)不会咨询其子容器来确定是否应该自动旋转
编辑 - - -
正如 Lomax 在下面提到的,Apple 不鼓励子类化 UINavigationController。您应该尝试使用类别(这个问题很好地解释了这一点):
@implementation UINavigationController
-(BOOL)shouldAutorotate
{
// your code
}
-(NSUInteger)supportedInterfaceOrientations
{
(...)
}
@end
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)