2012-05-22 34 views
0

嗨,大家好!
我正在尝试使用CCMenu类。我有这个方法:在cocos2d中使用CCMenu

-(void)showMenuItems { 
    CGSize size = [[CCDirector sharedDirector] winSize]; 
    [CCMenuItemFont setFontSize:28]; 
    CCMenuItem *runAlertItem = [CCMenuItemFont itemWithString:@"Show Alert" target:self selector:@selector(showAlert)]; 
    CCMenuItem *showTwitterPageItem = [CCMenuItemFont itemWithString:@"Twitter" target:self selector:@selector(showWebView)]; 
    CCMenuItem *showApplePageItem = [CCMenuItemFont itemWithString:@"Apple" block:^(id sender) { 
     webView = [[UIWebView alloc] initWithFrame:CGRectMake(0, 0, 480.0, 320.0)]; 
     [webView loadRequest:[NSURLRequest requestWithURL:[NSURL URLWithString:@"http:/www.apple.com"]]]; 
     [[[CCDirector sharedDirector] view] addSubview:webView]; 
     [self scheduleOnce:@selector(hideWebView) delay:10]; 
    }]; 

    mainMenu = [CCMenu menuWithItems:runAlertItem, showTwitterPageItem, showApplePageItem, nil]; 
    [mainMenu alignItemsVerticallyWithPadding:10]; 
    mainMenu.position = CGPointMake(size.width/2, size.height/2); 
    [self addChild:mainMenu]; 
} 

现在,我想调用此方法像这样:

[self scheduleOnce:@selector(showMenuItems) delay:71]; 

不幸的是,菜单没有出现。
我做错了什么?

在此先感谢!

回答

1

我已经在我的系统中运行上面的代码,它工作正常。
因为您正在使用scheduleOnce选择器来显示菜单,所以它会在71秒后出现。

[self scheduleOnce:@selector(showMenuItems) delay:71]; 
+0

准确,当我拼命地跑没有这个方法只是用[自showMenuItems],它工作正常,但出现在开始的时候,我需要当动画停止它出现。 –

+0

,但71秒后才出现。 –

+0

@AnatoliyGatt我认为这个错误与这段代码无关。我只是在一个新的cocos2d项目中添加了这个代码,菜单会在71秒后显示出来。 – Vaquita