2012-11-01 204 views
1

我有功能,在這裏我想補充塊變量blockIfLoadingImageFromServer數組:創建塊變量

- (UIImage *)getImageWithblockIfLoadingImageFromServer:(void (^)(UIImage *imageCompleted))blockIfLoadingImageFromServer 
{ 
     [array addObject:blockIfLoadingImageFromServer]; 
} 

那我想這個變量,但我不知道怎麼辦。我試過:

(void (^)(UIImage *imageCompleted))blockIfLoadingImageFromServer = [array objectAtIndex:0]; 
void (^)(UIImage *imageCompleted) *blockIfLoadingImageFromServer = [array objectAtIndex:0]; 

但是,這給出了一個錯誤(錯誤的語法)。我怎樣才能做到這一點?

回答

3

我通常typedef使我的生活更輕鬆:

typedef void (^ImageBlock)(UIImage*); 

然後:

- (void) doSomethingWithBlock: (ImageBlock) block 
{ 
    [array addObject:[block copy]]; 
} 

- (void) doSomethingElse 
{ 
    ImageBlock block = [array lastObject]; 
    … 
} 
+0

也[陣列ADDOBJECT:[blockIfLoadingImageFromServer複製]; – NeverBe