UIViewControllers没有收到方向通知

时间:2010-07-03 09:50:18

标签: cocoa-touch ipad orientation

我花了最后一小时左右的时间试图解决为什么我的所有UIViewControllers都没有收到方向更改通知。

我有一个附加到窗口的子类UIViewController,它在内部创建了一些其他的UIViewControllers来管理屏幕的较小部分,这些部分在我正在构建的应用程序的其他地方重新使用。

问题是,只有附加到窗口的UIViewController才会收到方向更改通知。 其他UIViewControllers没有触发他们的- (void)willAnimateRotationToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation duration:(NSTimeInterval)duration方法。

我假设它是预期的行为,我似乎无法在文档中找到任何提及它的内容。

有没有办法确保所有活动的UIViewControllers都获得方向更改?或者父视图控制器是否必须在发生更改时告诉其子项?

干杯。

1 个答案:

答案 0 :(得分:0)

是否所有视图控制器都返回YES到shouldAutorotateToInterfaceOrientation:?如果是这样,我建议将界面方向消息从父级传递给子视图控制器,如您所建议的那样。

我之前一直这样做,到目前为止对这种方法没有任何问题。