我正在使用 NSOperationQueue,我想将新的 NSOperations 添加到 NSOperationQueue。它是一个存在于我拥有的类的单例实例中的队列。如果我可以通过传递委托将所有内容移到静态类中,事情会变得容易得多。
这是我现在的代码 - 这是在cellForRowAtIndexPath
NSString *key = [NSString stringWithFormat:@"%@%@",cell.dataItem.ItemID, cell.dataItem.ManufacturerID];
if (![self.imgOperationInQueue valueForKey:key]) {
ImageOperation *imgOp = [[ImageOperation alloc] initWithItemID:cell.dataItem.ItemID withManufacturerID:cell.dataItem.ManufacturerID withReurnType:kThumbnail];
imgOp.identifier = [NSString stringWithFormat:@"%i", cell.tag];
imgOp.delegate = self;
[[SharedFunctions sharedInstance] addImageOperationToQueue:imgOp];
[imgOp release];
// store these in the dictionary so we don;t queue up requests more than once
[self.imgOperationInQueue setValue:cell.dataItem.ItemID forKey:key];
}
如果我可以将委托添加为参数,我可以将所有这些代码放入共享单例类中,并从我的应用程序的任何位置调用它。
我想我可以使用 NSNotification - 或者我可以使用某种块?