私は NSURLConnection のサブクラスに取り組んでいます。いくつかのプロパティと機能を追加しました。NSURLConnectionDelegate とそのメソッドを実装しました。
次に、サブクラスのデリゲートに NSURLConnection (およびそのプロパティ) を渡す必要があります。このためにデリゲート プロトコルを実装しました。
コード例を次に示します。
- (void)connection:(NSURLConnection *)connection didReceiveData:(NSData *)data {
if([_delegate respondsToSelector:_didReceiveDataSelector]) {
[_delegate performSelector:_didReceiveDataSelector withObject:connection];
}
ここで、サブクラスのプロパティも返す必要があります。インスタンスを単純にキャストしようとしました:
mySubClass *obj = (mySubClass *)connection;
obj.userInfo = self.userInfo;
NSLog(@"%@", NSStringFromClass([obj class]));
しかし、キャストがクラスがまだ NSURLConnection であるオブジェクトを返すことが判明しました。
ここで、スーパークラス インスタンスのすべてのプロパティ値とサブクラス プロパティをマージする方法を知りたいと思います。
手伝ってくれてありがとう!