在objective-c中是否可以扩展委托方法而不是替换它?

时间:2015-12-16 19:44:20

标签: ios objective-c delegates

我们假设我正在为班级

制作自定义代表

使用GMSMapViewDelegate类型的GMSMapView

其中一种方法是

- (UIView *)mapView:(GMSMapView *)mapView markerInfoWindow:(GMSMarker *)marker {

现在让我们说而不是替换这种方法,我只是想打电话

NSLog("This method ran") 

当方法被激活时。

是否可以使用NSLog功能简单地扩展此方法的默认行为?

1 个答案:

答案 0 :(得分:1)

  1. 实施您自己的委托类。

  2. 在该课程中有代表。

  3. 实现每个委托方法以记录并调用委托的委托。

  4. 利润。实际上,要准备好处理@optional方法;如果原始代表没有实现“em”,则可能需要自动调用。

  5. 将类的委托设置为您的委托,然后将委托的委托设置为原始委托。