我想要的是
我想在我的应用程序中添加一些日志记录代码,而不必更新我的所有视图控制器。
我试过的
我试图添加一个类别UIViewController
并覆盖其中一个委托方法。但是,这产生了几个警告/错误。
有没有办法将代码注入我所有应用的 ViewController 中?
我想在我的应用程序中添加一些日志记录代码,而不必更新我的所有视图控制器。
我试图添加一个类别UIViewController
并覆盖其中一个委托方法。但是,这产生了几个警告/错误。
有没有办法将代码注入我所有应用的 ViewController 中?
查看方法 swizzling。它是一个强大的工具,可以为您节省大量时间。调配您希望登录的方法之一,然后调用原始方法以使其执行最初应做的事情。
您可以继承 UIViewController,然后在您的超类中添加日志记录方法。不过,您仍然需要触摸所有 VC 并将课程更改为您的超级课程。
你不可能在一个 iOS 应用程序中拥有这么多视图控制器类,以至于触摸每一个都是一个大问题。所以创建你自己的 UIViewController 子类,也许OurSuperViewController
它会作为你的视图控制器的超类,并在那里添加日志记录。然后修改每个视图控制器类,以便它们继承自OurSuperViewController
,并确保每个都调用super
相关的视图控制器方法。
完成后,您可以通过修改来随意打开或关闭登录OurSuperViewController
。