iOS - 日志UI事件(如视图控制器)出现/消失

时间:2017-08-25 10:00:40

标签: ios logging uiviewcontroller nsnotificationcenter

BugFender有一个名为UI Logging的功能。例如,当视图控制器出现在屏幕上并记录信息时,它的作用就是监视器。另一个例子是触摸按钮时:

Fri Aug 25 2017 08:24:30 GMT+0200 (CEST) UI Front-most view controller: SettingsViewController (title: "Settings")
Fri Aug 25 2017 08:24:35 GMT+0200 (CEST) Interaction Action [UIBarButtonItem _sendAction:withEvent:] by sender UINavigationButton (title:"Log Out")
Fri Aug 25 2017 08:24:35 GMT+0200 (CEST) Interaction Action [SettingsViewController logOut:] by sender UIBarButtonItem (title:"Log Out")
Fri Aug 25 2017 08:24:36 GMT+0200 (CEST) UI Front-most view controller: UIAlertController

我想实现具有相同的功能。

如何观察我的应用中的所有视图控制器的外观/消失?

到目前为止,我发现,我可以观察UINavigationControllerDidShowViewControllerNotification次通知。但是,这不会记录UITabBarViewController中的日志更改,或者视图控制器以模态方式呈现而不包含在UINavigationController中。

1 个答案:

答案 0 :(得分:0)

其中一种方法是添加基类(比如说BaseViewController)并覆盖基类的viewWillAppearviewWillDisappear方法以观察更改。 您的所有其他viewControllers都将是此BaseViewController的子类。