我正在尝试在设备屏幕上创建动作。
在Apple documentation中,我读过您必须使用此方法:
override func willRotateToInterfaceOrientation(toInterfaceOrientation: UIInterfaceOrientation, duration: NSTimeInterval) {
println("I rotate.")
self.tabBar.frame = CGRectMake(0, 80, self.view.bounds.size.width, self.view.bounds.size.height);
}
但是当我在日志中转动屏幕时不打印“我旋转。”
修改
这些是项目的设置:
答案 0 :(得分:1)
答案 1 :(得分:0)
从文档中,你也应该打电话给super:
此方法的实现必须在执行期间的某个时刻调用super。
这不应该导致你看到的问题。仔细检查您的目标是否允许旋转。转到您的项目,选择目标,并在一般情况下确保您已选中其他方向。如果您只选中了一个方向,则可以旋转设备,但不会改变方向。
答案 2 :(得分:0)
这种方法在哪里?只有在UIViewController
。
willRotateToInterfaceOrientation
(这似乎是你正在使用的),但在iOS 7中调用它。尽管方法是不推荐使用,它仍然在iOS 8中的UIViewController的直接子类中调用。但是,对于iOS 8及更高版本,最好使用新的viewWillTransitionToSize:withTransitionCoordinator:
。