2012-11-01 116 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