视图和按钮旋转后未响应触摸

问题描述:

我对iOS 3.0编码,我试图向我的应用程序添加旋转(横向)支持。视图和按钮旋转后未响应触摸

关于旋转的一切都很简单。但是,从肖像旋转到横向模式后,屏幕右侧的三分之一(480-320)对所有事件(触摸,拖动等)都没有响应。我已验证关键窗口正在接收事件,但这些事件并未传递到屏幕右侧(横向)的按钮和UIViews。

我正在使用NSNotificationCenter接收方向已更改的事件(并且未使用自动旋转标志)。

我看过:link text但这对我的情况并不是很有帮助。

卡住了。需要帮忙。谢谢。

我修复了我遇到的问题..我基本上需要做[self.navigationController.view setNeedsLayout]

的方式我明白这一点(这也许不正确是self.navigationController.view.frame是相同self.view.frame两者均为等于(X = 0,Y = 0,宽度= 320,高度= 480)。然后,我通过M_PI/2旋转self.view和在选择self.view.subviews上做了一些帧操作,以使所有的东西都能正确动画/定位/缩放。

这样的结果没问题,但导航控制器并不愿意承认触摸事件的部分self.view那里在本质上,如果这个self.navigationController.view.clipsToBounds是真的,它可能甚至没有显示self.view的那部分。

无论如何,在导航控制器的视图上设置setNeedsLayout解决了问题。我希望这可以帮助别人。