it?) 问题(reflection或类似于reflection)
是否有可能(在Swift中)以编程方式提取iOS协议的所有方法签名,例如对于UITextViewDelegate (其方法都是可选的),而不必实例化一个显式实现所有协议方法的单独类?
发布于 2017-01-05 01:24:29
在这种情况下,希望作为委托进行干预,以拦截其中一种方法并对该活动执行一些相关操作,然后将委托调用链上移。但不幸的是,成为代理意味着要将所有协议转发给下游消费者。
如果你说的是我想说的话,实际上有一个非常简单的方法:实现forwardingTarget(for:),就像我在这里所做的那样:
我的想法是,我不知道表视图的dataSource实际上是做什么的,因为表视图及其数据源属于Cocoa,但是我想充当它们之间的“中间人”,如果调用了一个数据源方法,我只想调整它的行为。所有其他的方法调用都被传递了,我甚至不知道它们是什么。
https://stackoverflow.com/questions/41475383
复制相似问题