我有以下视图层次结构
- UIScrollView(水平滚动)
- UIScrollView(垂直滚动)
- UIViewController
- UIScrollView(垂直滚动)
实际上有一个 Root ScrollView 控制器,它有多个 Sub ScrollViews。(Root ScrollViewController 仅水平滚动 - 子仅垂直滚动)。每个 Sub ScrollView 都有一个 UIViewController。
我的 Root ScrollView 控制器按预期工作,并调用我的旋转方法,如下所示:
- (BOOL)shouldAutorotateToInterfaceOrientation (UIInterfaceOrientation)interfaceOrientation
{
return YES;
}
- (void) willRotateToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation duration:(NSTimeInterval)duration
{
[self rotateScrollViewToInterfaceOrientation:toInterfaceOrientation];
}
- (void) rotateScrollViewToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
{
if (UIInterfaceOrientationIsLandscape(interfaceOrientation))
{
// do some rotation logic
}
}
我在我的 Sub ScrollViews 和 UIViewControllers 中使用了相同的方法,但它们不会在旋转时被调用。
任何人都知道为什么?