【问题标题】:Game Center leaderboards in spritekitspritekit 中的游戏中心排行榜
【发布时间】:2014-04-12 18:11:45
【问题描述】:

我正在尝试从我的主菜单类中展示我的排行榜,但我遇到了一些错误。这是我的代码,

- (void) showLeaderboard
{
GKLeaderboardViewController *leaderboardController = [[GKLeaderboardViewController alloc] init];
if (leaderboardController != nil)
{
    leaderboardController.leaderboardDelegate = self;
    [self presentModalViewController: leaderboardController animated: YES];
}
}
- (void)leaderboardViewControllerDidFinish:(GKLeaderboardViewControl*)viewController
{
    [self dismissModalViewControllerAnimated:YES];
}

我得到'没有接口声明presentModalViewController:animated''没有接口声明dismissModalViewControllerAnimated:。有人可以告诉我正确的方法吗,我对这些东西没有太多经验。

【问题讨论】:

    标签: ios7 sprite-kit game-center


    【解决方案1】:

    这是因为当前/关闭视图控制器方法存在于视图控制器及其子类中,并且您尝试使用 SKNode 的子类作为接收者来调用它们。为了解决这个问题,您需要获取对视图控制器子类的引用并将这些消息发送给它。最简单的方法可能是通过节点的场景视图的窗口的根视图控制器。

    - (void) showLeaderboard
    {
        GKLeaderboardViewController *leaderboardController = [[GKLeaderboardViewController alloc] init];
        if (leaderboardController != nil)
        {
            leaderboardController.leaderboardDelegate = self;
            [self.scene.view.window.rootViewController presentModalViewController: leaderboardController animated: YES];
        }
    }
    - (void)leaderboardViewControllerDidFinish:(GKLeaderboardViewControl*)viewController
    {
        [self.scene.view.window.rootViewController dismissModalViewControllerAnimated:YES];
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多