iOS-監聽某個代理的所有代理方法(多重代理)

代碼地址

比如監聽UIScrollView的所有代理方法

首先建立一個NSProxy的子類,子類持有一個數組,這個數組用于方法UIScrollView的代理,可以是多個代理

然后self.scrollView.delegate = self.proxy;

這樣當觸發代理的時候,就會走proxy類,這時候因為沒有實現對應的代理方法,那么就會走消息轉發,再消息轉發的時候,再拿proxy的數組,遍歷出delegate,調用對應的代理方法,這樣就可以實現,監聽到所有的代理了

?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • 1.設計模式是什么? 你知道哪些設計模式,并簡要敘述? 設計模式是一種編碼經驗,就是用比較成熟的邏輯去處理某一種類...
    司馬DE晴空閱讀 1,317評論 0 7
  • iOS網絡架構討論梳理整理中。。。 其實如果沒有APIManager這一層是沒法使用delegate的,畢竟多個單...
    yhtang閱讀 5,251評論 1 23
  • 前言:面試筆試都是必考語法知識點。請認真復習和深入研究OC。 目錄:iOS-面試題-OC基礎篇 (1) - (84...
    麥穗0615閱讀 4,270評論 0 33
  • 設計模式是什么? 你知道哪些設計模式,并簡要敘述? 設計模式是一種編碼經驗,就是用比較成熟的邏輯去處理某一種類型的...
    iOS菜鳥大大閱讀 732評論 0 1
  • 今天日更第四十天,說啥也得寫點重要的內容 加入進化營一來,每天都元氣滿滿,熱血沸騰。但是這幾天我都做了些什么呢? ...
    開心就好_792c閱讀 131評論 1 1