2013-06-19 2 views
0

CCMenu에서 버튼을 구성하여 메뉴와 같은 기능을 수행 할 수 있습니까? 예를 들어이 브라우저의 파일, 편집,보기 등cocos2d의 메뉴 계층 구조

내가 지금 사용하고있어 표준입니다

:

CCMenu *selectMenu = [CCMenu menuWithItems: item1, item2... nil]; 
[selectMenu alignItemsHorizontallyWithPadding:15]; 
CGSize winSize = [CCDirector sharedDirector].winSize; 
CGPoint topLeft = CGPointMake(winSize.width/2.0, winSize.height/1.035); 
[selectMenu setPosition:topLeft]; 
[self addChild:selectMenu]; 

이가 작동,하지만 난 하나의 행으로 정렬 너무 많은 버튼이, 그래서이 질문.

답변

0

가능하지만 사용자가 메뉴 항목을 클릭 할 때 하위 메뉴를 만들어야합니다. 이 같은

뭔가 :

CCMenu *menu = nil; 

    CCMenuItem *item = [CCMenuItemFont itemWithString:@"Edit" block:^(id sender) { 

     CCMenu *submenu = nil; 

     CCMenuItem *subitem = [CCMenuItemFont itemWithString:@"SubItem" block:^(id sender) { 
      //Do Stuff here 
      [submenu removeFromParent]; 
     }]; 

     CCMenuItem *subitem2 = [CCMenuItemFont itemWithString:@"CloseSubMenu" block:^(id sender) { 

      [submenu removeFromParent]; 
     }]; 

     submenu = [CCMenu menuWithItems:subitem,subitem2, nil]; 

     [menu addChild:submenu]; 

    } ]; 

    menu = [CCMenu menuWithItems:item, nil]; 

    [self addChild:menu]; 

당신은 여전히 ​​화면에 좋아 보이는 확인하기 위해 위치를 설정해야합니다.