1

しかし、私はおそらく答えを正面から見つめています。

文字列にランダムな色を割り当てたいCCLabelTTF。戻り値の型を設定して(CCColor3B *)割り当てようとするCCLabelTTF.color = [self randomColor]と、メソッドと上記の割り当ての両方で、互換性のない割り当てエラーが発生します。メソッドコード:

-(ccColor3B *)randomColor
{
float r = arc4random() % 255;
float g = arc4random() % 255;
float b = arc4random() % 255;
ccColor3B *color =  {r,g,b,1};
return color;
}

間違った型の戻り値を取得しようとしているか、読み取り専用の値を割り当てようとしていると思いますが、情報CCColor3Bが不足しています。前もって感謝します。

4

1 に答える 1

3

Cocos2d class documentationから、 CCSpriteのプロパティcolorはポインターではありません (構造体です)。

-(ccColor3B) 色 [読み取り、書き込み、割り当て]

次のようにメソッドを変更する必要があります

-(ccColor3B)randomColor
{
float r = arc4random() % 255;
float g = arc4random() % 255;
float b = arc4random() % 255;
return ccc3(r,g,b);
}

ccColor3B の定義は、CCTypes.h のドキュメント( 43 行目)にあります。

typedef struct _ccColor3B {
GLubyte r;
Glubyte g;
Glubyte b; } ccColor3B;

于 2012-01-13T18:12:15.313 に答える