我有两个NSURLConnections.第二个取决于第一个的内容,所以处理从连接接收的数据对于两个连接将是不同的.
我只是拿起Objective-C,我想知道什么是正确的方式来实现代表是.
现在我正在使用:
NSURL *url=[NSURL URLWithString:FeedURL]; NSURLRequest *urlR=[[[NSURLRequest alloc] initWithURL:url] autorelease]; NSURLConnection *conn=[[NSURLConnection alloc] initWithRequest:urlR delegate:self];
我不想使用self作为委托,如何定义与不同代表的两个连接?
NSURLConnection *c1 = [[NSURLConnection alloc] initWithRequest:url delegate:handle1]; NSURLConnection *c2 = [[NSURLConnection alloc] initWithRequest:url delegate:handle2];
我将如何创建handle1和handle2作为实现?还是接口?我真的不知道你会怎么做
任何帮助都是极好的.
谢谢,
Brian Gianforcaro
解决方法
在您的示例中,您将分配一个DownloadDelegate对象,而无需初始化它.
DownloadDelegate *dd = [DownloadDelegate alloc];
这是危险的.代替:
DownloadDelegate *dd = [[DownloadDelegate alloc] init];
此外,在@interface声明中声明您的委托响应方法并不是绝对必要的(尽管它当然不会受到伤害).最后,您需要确保实现连接:didFailWithError:和connectionDidFinishLoading:释放您的DownloadDelegate对象,否则您将泄漏.
很高兴你开始运行!