如何在红色录音状态栏显示时得到通知?

How to get notified when red audio-recording status bar shows?

当显示由某些第三方应用程序(如 Viber)引起的红色录音状态栏时,我的 iOS 应用程序的视图略微向下移动。这有点破坏了我的应用程序的界面。

有没有我可以订阅的系统通知,以便在显示此栏时得到通知? 我可以得到这个栏的高度吗?

您需要在状态栏更改时使用通知。

使用下面的代码来处理:

- (void)viewDidLoad {
    [super viewDidLoad];
    // Do any additional setup after loading the view, typically from a nib.
    [[NSNotificationCenter defaultCenter] addObserver:self
                                             selector:@selector(change:)
                                                 name:UIApplicationWillChangeStatusBarFrameNotification
                                               object:nil];

}

- (void)change:(NSNotification *)notificacion {
    NSLog(@"%@", notificacion.userInfo);
}