1

我正在尝试添加CCButton到我的场景中。我正在使用 Sprite builder。这是我的代码。

CCButton *btnTest = [[CCButton alloc]initWithTitle:@"BNB test"];
    [btnTest.label setName:@"Test"];
    btnTest.position = ccp(150.0f, 150.0f);

    [self addChild:btnTest];

它没有出现在现场。可能是什么原因?

4

2 回答 2

0

CCButton 上的界面有点不流畅恕我直言,所以我写了一个类别。

@implementation CCButton (additions)
+(id)buttonWithImagenamed:(NSString*)imagename block:(void(^)(id sender))block {
    CCSpriteFrame* spriteframe = [CCSpriteFrame frameWithImageNamed:imagename];
    NSAssert(spriteframe != nil, @"nil spriteframe for imagename: %@", imagename);
    CCButton* button = [CCButton buttonWithTitle:@"" spriteFrame:spriteframe];
    button.block = block;
    return button;
}
@end

这里需要强调一下:“imagename”必须是相对的,所以如果放到“graphics/myimage.png”这样的文件夹中,需要@"graphics/myimage.png"在代码中指定。仅@"myimage.png"在这种情况下不起作用。

于 2014-05-13T07:15:03.933 回答
0

试试这种方式,我用它作为后退按钮,下面的代码可以正常工作:

CCButton *backButton = [CCButton buttonWithTitle:@"[ Back ]" fontName:@"Verdana-Bold" fontSize:18.0f];
backButton.positionType = CCPositionTypeNormalized;
backButton.position = ccp(0.95f, 0.95f); // Top Right of screen
[backButton setTarget:self selector:@selector(BackClicked:)];
[self addChild:backButton];

会不会对你有帮助...

快乐的编码... :)

于 2014-03-05T05:48:45.590 回答