我有这个在视图中显示排行榜的代码
.h
UIViewController *presentingViewController;
{
@property (retain) UIViewController *presentingViewController;.m
- (void)leaderboardViewControllerDidFinish:(GKLeaderboardViewController *)viewController
{
[presentingViewController dismissModalViewControllerAnimated:YES];
[self.presentingViewController.view removeFromSuperview];
}
- (void)leaderboard
{
GKLeaderboardViewController *lb = [[GKLeaderboardViewController alloc] init];
if(lb != nil){
lb.leaderboardDelegate = self;
presentingViewController = [[UIViewController alloc] init];
[[[[CCDirector sharedDirector] openGLView] window] addSubview:presentingViewController.view];
[presentingViewController presentModalViewController:lb animated:YES];}
每件事都很好,它显示了排行榜,当我点击完成按钮时,它会消失,但如果我点击游戏中心按钮,排行榜就不出来了,我们也无法浏览其他页面。
上面的代码有什么问题,这是针对iphone cocos2d应用程序的
提前谢谢。
发布于 2012-10-06 21:46:44
我在cocos2D游戏中使用了这段代码,运行良好,
-(void)displayLeaderboard
{
GKLeaderboardViewController *leaderboardViewController = [[GKLeaderboardViewController alloc] init];
leaderboardViewController.leaderboardDelegate = self;
AppController *app = (AppController*) [[UIApplication sharedApplication] delegate];
[app.navController presentModalViewController:leaderboardViewController animated:YES];
}
#pragma mark GameKit delegate
-(void) achievementViewControllerDidFinish:(GKAchievementViewController *)viewController
{
AppController *app = (AppController*) [[UIApplication sharedApplication] delegate];
[app.navController dismissModalViewControllerAnimated:YES];
}
-(void) leaderboardViewControllerDidFinish:(GKLeaderboardViewController *)viewController
{
AppController *app = (AppController*) [[UIApplication sharedApplication] delegate];
[app.navController dismissModalViewControllerAnimated:YES];
}https://stackoverflow.com/questions/12760258
复制相似问题