【发布时间】:2014-04-08 15:03:45
【问题描述】:
当使用 GKAchievementViewController 显示成就对话框时,这将按预期工作。
但是,当使用 GKLeaderboardViewController 显示排行榜对话框时,我只是一个灰屏并且没有完成按钮。此外,它在 iPhone 上的方向似乎是错误的。
代码如下:
this.leaderboardController.TimeScope = GKLeaderboardTimeScope.AllTime;
this.leaderboardController.Category = "myLeaderboardId";
this.leaderboardController.ModalPresentationStyle = UIModalPresentationStyle.FormSheet;
this.leaderboardController.DidFinish += (senderLeaderboard, eLeaderboard) =>
{
this.leaderboardController.DismissViewController(true, null);
};
viewController.PresentViewController(this.leaderboardController, false, null);
我正在使用与 Game Center 中显示成就对话框相同的视图控制器。
我无法关闭排行榜对话框,因为它甚至没有“完成”按钮。
【问题讨论】:
-
你试过删除
UIModalPresentationStyle.FormSheet吗?这些 GameKit 控制器应该处理他们想要的演示风格。 -
是的,这是我最初尝试过的(即没有设置 ModalPresentationStyle)。
-
好的!我之前的评论不准确,实际上我一定没有尝试过 - 我只是完全删除了 UIModalPresentationStyle.FormSheet 设置,现在它的方向正确!但是 - 仍然没有“完成”按钮:s 所以我不能关闭这个视图。
-
我的另一个观察结果是,如果我将 animate 属性设置为“true”,那么我根本看不到任何数据。我需要将 animate 属性(在 PresentViewController 中)设置为 false 才能查看我的排行榜数据。但是标题栏仍然有问题,因为没有完成按钮,也没有像呈现 GKAchievementViewController 时那样的标题(效果很好)。
标签: ios xamarin game-center leaderboard achievements