Я работаю с 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 - или я могу использовать какой-то блок?