2014-02-25 57 views
0

我用cocos2dV3我創造了一些顏色:如何創建一個CCColor數組?

#define color_red ccc3(253, 93, 70) 
#define color_green ccc3(138,233,145) 
#define color_yellow ccc3(230,219,37) 
#define color_violet ccc3 (153,93,181) 
#define color_turquoise ccc3(138,188,255) 
#define color_default ccc3(225,225,225) 

我怎樣才能將它保存爲數組:NSArray的,NSmutableAraay ...?

NSmutableArray * _arrColors =[[NSMutableArray alloc]init]; 

    [_arrColors addObject:color_turquoise]; 

當我創建數組它送花兒給人顯示錯誤:「發送‘ccColor3B’(又名‘結構_ccColor3B’)以不兼容的類型‘ID’的參數」

我該怎麼辦撥錯?

+0

你不能。 ccColor3B顯然是一個結構。你不能將結構放入NSArray中,因爲結構不是對象。 – matt

回答

1

使用cocos2d並不能免除您瞭解Objective-C的責任。 ccColor3B不是一個對象 - 它是一個結構體 - 因此它不能放入NSArray中。你可以,如果你真的想這樣做,把它包在一個物體中,或許是這樣的:

ccColor3B c = color_turquoise; 
[_arrColors addObject:[NSValue valueWithBytes:&c objCType:@encode(ccColor3B)]]; 
+0

謝謝你,struct不能放入NSarray。 – user3200622