2012-10-11 5 views
1

'메뉴'버튼은 화면의 왼쪽 상단 모서리에있는 '플레이어 전환'버튼을 통해 표시되지만 '메뉴'버튼의 상단 부분은 화면 위에 있습니다. 어떻게 됐니? 이거 버그 야?화면 상단에 CCMenu 정렬

왼쪽 맞춤은 괜찮습니다.

감사합니다.

-(void) superSceneEnded 
{ 
    _sceneEnded = true; 

    CCMenu *menu = [CCMenu menuWithItems:nil]; 
    menu.anchorPoint = ccp(0, 1); // Upper left corner 
    menu.position = ccp(2, _winSize.height - 2); // Almost at upp left corner of screen 
    [self addChild:menu]; 

    [self addButton:menu :@"Menu" :@selector(goToMenu)]; 
    if ([MatchMgr instance].currentMatch.isOnDevice) 
    { 
    [self addButton:menu :@"Switch player" :@selector(switchPlayer)]; 
    } 
    [menu alignItemsVerticallyWithPadding:10]; 
} 

-(void) addButton: (CCMenu*) menu: (NSString*) text: (SEL) selector 
{ 
    CCMenuItem *menuItem = [CCMenuItemImage itemFromNormalImage:@"button.png" selectedImage:@"button-pressed.png" target:self selector:selector]; 
    menuItem.anchorPoint = ccp(0, 1); // Upper left corner 
    //menuItem.scale = 0.5; 
    [menu addChild:menuItem]; 

    // The code below is not relevant for the question, but I keep it for your understanding. 
    CCLabelBMFont *bmText = [CCLabelBMFont labelWithString:text fntFile:@"MainFont.fnt"]; 
    bmText.color = ccBLACK; 
    bmText.scale = 0.75; 
    bmText.alignment = NSTextAlignmentCenter; 
    bmText.position = ccp(75, 15); 
    [menuItem addChild: bmText]; 

은}

+0

가 CCMenu의 anchorPoint을 변경하지 마십시오, 그것은 완전히 터치 감지 및 위치 놨어요. 위치 만 설정하십시오. – LearnCocos2D

+0

좋아, 그럼 어떻게 왼쪽 상단 모서리에 자동 정렬 메뉴 버튼의 더미를 넣어합니까? 가능한가? –

답변

3

이 정말 깨진 것처럼 보인다 http://www.cocos2d-iphone.org/forum/topic/8261

내가 대신 버튼의 내 자신의 위치를 ​​않습니다.

여기 내, 그래서 공상하지, 코드입니다 :

-(void) superSceneEnded 
{ 
    _sceneEnded = true; 

    CGFloat yPos = _winSize.height - 10; 
    CCMenu *menu = [CCMenu menuWithItems:nil]; 
    menu.position = ccp(0, 0); 
    [self addChild:menu]; 

    [self addButton:menu :@"Menu" :@selector(goToMenu): &yPos]; 
    if ([MatchMgr instance].currentMatch.isOnDevice) 
    { 
    [self addButton:menu :@"Switch player" :@selector(switchPlayer): &yPos]; 
    } 
} 

-(void) addButton: (CCMenu*) menu: (NSString*) text: (SEL) selector: (CGFloat*) yPos 
{ 
    CCMenuItem *menuItem = [CCMenuItemImage itemFromNormalImage:@"button.png" selectedImage:@"button-pressed.png" target:self selector:selector]; 
    menuItem.scale = 0.5; 
    menuItem.position = ccp(42, *yPos); 
    *yPos -= 20; 
    [menu addChild:menuItem]; 

    CCLabelBMFont *bmText = [CCLabelBMFont labelWithString:text fntFile:@"MainFont.fnt"]; 
    bmText.color = ccBLACK; 
    bmText.scale = 0.75; 
    bmText.alignment = NSTextAlignmentCenter; 
    bmText.position = ccp(75, 15); 
    [menuItem addChild: bmText]; 
} 
관련 문제