在Cocos2d 3项目中展示GKGameCenterViewController

时间:2014-02-24 04:58:17

标签: ios cocos2d-iphone spritebuilder

我正在尝试为使用SpriteBuilder创建的游戏制作排行榜。我有以下代码。

if (gameCenterController != nil)
{
    gameCenterController.gameCenterDelegate = self;
    gameCenterController.viewState = GKGameCenterViewControllerStateLeaderboards;
    UIViewController *vc = self.view.window.rootViewController;
    [vc presentViewController: gameCenterController animated: YES completion:nil];
}

然而,在UIViewController * vc行上,我一直收到以下错误,“在'MainScene *'类型的对象上找不到”属性'视图。

我一直在寻找几个小时,有没有人知道这方面的解决方案?

2 个答案:

答案 0 :(得分:3)

MainScene 没有view属性,因为它不是UIViewController。 Cocos2d应用程序中只有一个UIViewController,即CCDirector

如果要呈现视图控制器,则需要从CCDirector

中显示它
 [[CCDirector sharedDirector] presentViewController:vc animated:YES completion:nil];

答案 1 :(得分:0)

我实际上回答了我自己的问题! :d

UIViewController *vc = [[[[CCDirector sharedDirector] view] window] rootViewController];