Ios 在Cocos2d 3项目中演示CenterViewController

Ios 在Cocos2d 3项目中演示CenterViewController,ios,cocos2d-iphone,spritebuilder,Ios,Cocos2d Iphone,Spritebuilder,我正在尝试为我使用SpriteBuilder创建的游戏制作排行榜。我有以下代码 if (gameCenterController != nil) { gameCenterController.gameCenterDelegate = self; gameCenterController.viewState = GKGameCenterViewControllerStateLeaderboards; UIViewController *vc = self.view.wind

我正在尝试为我使用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*”类型的对象上找不到属性“view”

我已经搜索了几个小时,有人知道这个问题的解决方案吗?

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

如果要显示视图控制器,需要从
CCDirector
显示它:

 [[CCDirector sharedDirector] presentViewController:vc animated:YES completion:nil];

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

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

实际上,这可以压缩为:[CCDirector sharedDirector](CCDirector是cocos2d的UIViewController)