Delegate格式備忘

定義

#import <Foundation/Foundation.h>
@class EOCNetworkFetcher;

@protocol EOCNetworkFetcherDelegate<NSObject>
- (void)networkFetcher:(EOCNetworkFetcher *)nerworkFetcher
     didFinishWithData:(NSData *)data;
@end

@interface EOCNetworkFetcher : NSObject
@property(nonatomic,weak) id <EOCNetworkFetcherDelegate> delegate;
- (id)initWithURL:(NSURL*)URL;
- (void)start;
@end

其他類可以這樣使用

//設置代理部分
- (void)fetchFooData{
    NSURL *url = [[NSURL alloc] initWithString:@""];
    _fooFetcher = [[EOCNetworkFetcher alloc] initWithURL:url];
    _fooFetcher.delegate = self;
    [_fooFetcher start];
}

- (void)fetchBarData{
    NSURL *url = [[NSURL alloc] initWithString:@""];
    _barFetcher = [[EOCNetworkFetcher alloc] initWithURL:url];
    _barFetcher.delegate = self;
    [_barFetcher start];
}
//實現代理部分
- (void)networkFetcher:(EOCNetworkFetcher *)nerworkFetcher
     didFinishWithData:(NSData *)data{
    if(networkFetcher == _fooFetcher){
        _fetchedFooData = data;
        _fooFetcher = nil;
    }else{
        _fetchedBarData = data;
        _barFetcher = nil;
    }
}
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • Spring Cloud為開發人員提供了快速構建分布式系統中一些常見模式的工具(例如配置管理,服務發現,斷路器,智...
    卡卡羅2017閱讀 134,973評論 19 139
  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 173,462評論 25 708
  • Spring Boot 參考指南 介紹 轉載自:https://www.gitbook.com/book/qbgb...
    毛宇鵬閱讀 46,970評論 6 342
  • 王小安喜歡看青春系列的電視劇,有人推薦她看一起同過窗。 一起同過窗里,有不愿將就、不愿傷害的肖海洋,有堅強的讓人心...
    王曼曼閱讀 303評論 0 1
  • 昨夜有位詩人告訴我 詩的產生很少是因為快樂 產生了詩也不會擁有快樂 追逐快樂是一切生物的本能 你怎能告訴我不要貪圖...
    陳子桓閱讀 150評論 0 0