iOS监听状态栏的点击事件

偶尔需要监听状态栏的点击事件来处理部分功能。今天我来给大家梳理下。

注意:我今天主要说的是iOS13.0后和iOS13.0之前的区别,说的不好大家见谅!!!

一、13.0之前监听状态栏的点击事件

(1)在Appdelegate上面添加点击事件监听。代码如下:

iOS监听状态栏的点击事件_第1张图片

(2)比如我在A页面需要监听状态栏点击,然后让UIScrollView滚动顶部,就可以在A页面的添加以下代码

iOS监听状态栏的点击事件_第2张图片

iOS监听状态栏的点击事件_第3张图片

这样就可以实现状态栏的点击事件监听了。
接下来讲讲13.0后的状态栏点击事件监听,13.0比较特殊,相当于把13.0之前的第一步变更了而已

二、13.0之前监听状态栏的点击事件

(1)因为13.0后,状态栏的管理全都由UIStatusBarManager这个类来管理了(UIStatusBarManager是13.0后新增的,大家可以点进去看看属性,获取frame,是否隐藏和stype都是在这里获取)

(2)这一步是最重要的,本人亲测有效。先创建一个基于UIStatusBarManager的扩展类

(3)然后在类里面添加以下代码即可:

iOS监听状态栏的点击事件_第4张图片

iOS监听状态栏的点击事件_第5张图片

(4)剩下的就和13.0之前的流程一样了,指定页面接收通知即可。

写的不好,大家将就着看看吧。。。

你可能感兴趣的:(iOS监听状态栏的点击事件)