さまざまなカテゴリに分類される多くの urlconnections がある場合 (たとえば、5 つのうち 10 つがオーディオ用、3 つが表示画像用、2 つがリンクを開くためなど) の場合は、サブクラスNSURLConnection化してカスタムNSURLConnectionクラスを作成することをお勧めします。タグのような独自のプロパティをこのクラスに追加できます。また、独自のカスタム タグをさまざまなタイプの接続に定義します。およびデリゲート メソッドで、UIViewControllerこのサブクラス オブジェクトを使用し、このtagプロパティを使用して異なるNSURLConnections.
例:-
CustomNSURLConnectionファイルを作成して書き込み、
#define kAudioConnectionTag 100
#define kDisplayConnectionTag 200
#define kOpenURLConnectionTag 300
@interface CustomNSURLConnection : NSURLConnection
@property (nonatomic) NSInteger tag;
UIViewControllerクラスでは、
CustomNSURLConnection *audioConnection = [CustomNSURLConnection ...];
audioConnection.tag = kAudioConnectionTag;
CustomNSURLConnection *displayConnection = [CustomNSURLConnection ...];
audioConnection.tag = kDisplayConnectionTag;
CustomNSURLConnection *openURLConnection = [CustomNSURLConnection ...];
audioConnection.tag = kOpenURLConnectionTag;
- (void)connectionDidFinishLoading:(CustomNSURLConnection *)connection{
if (connection.tag == kAudioConnectionTag) {
//code
} else if (connection.tag == kDisplayConnectionTag) {
//code
} else {
//code
}
}