幫我解決了任務 - 我有一個不能轉動它的接口的viewController:如何旋轉控制器中不允許旋轉其界面的視圖?
- (BOOL)shouldAutorotate {
return NO;
}
- (NSUInteger)supportedInterfaceOrientations {
return UIInterfaceOrientationMaskPortrait;
}
但我需要旋轉它出現在該控制器alertView!所以如果用戶旋轉設備,alertView應該跟隨旋轉並且主界面靜止不動。我試着訂閱通知:
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(deviceRotated:) name:UIDeviceOrientationDidChangeNotification object:nil];
但在我deviceRotated:
我收到這樣的有效載荷通知: NSConcreteNotification 0x101dc50 {name = UIDeviceOrientationDidChangeNotification; object = <UIDevice: 0x103e640>; userInfo = { UIDeviceOrientationRotateAnimatedUserInfoKey = 1; }}
什麼是UIDeviceOrientationRotateAnimatedUserInfoKey
?我如何使用它來了解當前的interfaceOrientation?或者建議獲取當前方向並旋轉alertView的更好方法。
我試圖用
(BOOL)shouldAutorotateToInterfaceOrientation:UIInterfaceOrientation)toInterfaceOrientation
和
- (void)willRotateToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation duration:(NSTimeInterval)duration
但這些方法沒有得到所謂的iOS6的:(
此外,是否有任何其他的方法,你可以使用知道該設備正在旋轉到某個方向?提前致謝! PS我知道這項任務似乎有點愚蠢,但這是客戶的要求。對不起:)對不起:)
謝謝,這是最簡單的方法。 – Stas 2013-03-14 09:46:09