我正在使用 UIApplicationWillChangeStatusBarFrameNotification 来判断状态栏何时会更改,这确实有助于我确定正在进行的呼叫何时消失,并且行为如我所愿。
但是,我的应用程序中有一个场景是全屏显示,其中包括隐藏状态栏……除了我不想在通话时隐藏状态栏。
我的理解是,这个状态栏首先出现的唯一方法是如果我(a)接到电话,然后(b)返回我的应用程序。
所以……当我接到电话后返回我的应用程序时……没有绿色状态栏。(fwiw,当我点击我的应用程序以使状态栏和导航栏和标签栏重新出现时,确实会出现绿色状态栏,所以并不是它完全消失了;只是因为我告诉它隐藏而隐藏。在模拟器,执行“硬件->切换通话状态栏”按我的意愿工作,但我认为这种行为在现实世界中不会真正以这种方式发生。)
我找到了当用户在通话中打开我的 iPhone 应用程序时如何获得通知的答案?…但这只有在我的应用程序重新打开时状态栏可见时才有效。
我想知道当我返回我的应用程序时如何告诉我正在通话,以便我可以在用户查看我的场景时手动取消隐藏绿色状态栏,否则会隐藏状态栏。
因此,我的问题是:是否有一个界面可以告诉我这些信息,当我在 applicationDidBecomeActive: 中返回应用程序时可以查询这些信息:或通过某种其他类型的通知?