ステータスバーが回転するタイミングを知りたい。画面の回転通知を受信すると、「上向き」や「下向き」などの向きで問題が混乱する可能性があります。したがって、ステータス バーの向きに基づいて回転を管理するのが、最も簡単でクリーンな方法です。向きが変わったときに通知を受け取るにはどうすればよいですか?
質問する
4639 次
2 に答える
12
UIApplicationDidChangeStatusBarOrientationNotification
通知に登録する必要があります。
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(statusBarOrientationChange:) name:UIApplicationDidChangeStatusBarOrientationNotification object:nil];
- (void)statusBarOrientationChange:(NSNotification *)notification {
UIInterfaceOrientation orient = [notification.userInfo[UIApplicationStatusBarOrientationUserInfoKey] integerValue];
// handle the interface orientation as needed
}
このアプローチでは、インターフェイスの向きのみが処理されるため、デバイスの向きが「上向き」または「下向き」になることはありません。
于 2013-02-18T18:11:04.950 に答える
-1
//register to receive orientation notifications somewhere:
[[UIDevice currentDevice] beginGeneratingDeviceOrientationNotifications];
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(detectOrientation) name:UIDeviceOrientationDidChangeNotification object:nil];
-(void)detectOrientation{
switch ([[UIDevice currentDevice] orientation]) {
case UIDeviceOrientationFaceDown:{
}
break;
default:{
}
break;
}
}
うまくいかない場合は、方向ロックを確認してください。それに何時間も無駄にしました。
于 2013-02-18T18:04:30.903 に答える