2013-05-20 2 views
0

내 Cocos2d 게임에서 리더 보드를 표시하려고합니다. 아래 코드는 iOS 5.0에서 올바르게 작동합니다. 그러나 6.1에서 아래 오류 메시지와 함께 충돌합니다. 제안에 대해 미리 감사드립니다.리더 보드 표시시 Cocos2d, iOS 6.1, GameCenter 크래시

* 캐치되지 않은 예외 'UIViewControllerHierarchyInconsistency'로 인해 앱이 종료되는 이유는 다음과 같습니다. '한 번에 하나의보기 컨트롤러에만보기를 연결할 수 있습니다! 보기>가와 연결됩니다. 이보기를 연결하기 전에이 연관을 지우십시오. '

- (void)showLeaderboard:(id)sender 
{ 
GKLeaderboardViewController *leaderboardController = [[GKLeaderboardViewController alloc] init]; 
if (leaderboardController != NULL) 
{ 

    leaderboardViewController = [[UIViewController alloc] init]; 
    leaderboardController.category = self.currentLeaderBoard; 
    leaderboardController.leaderboardDelegate = self; 

    [leaderboardViewController setView:[[CCDirector sharedDirector] openGLView]]; 
    [leaderboardViewController presentViewController:leaderboardController animated:YES completion:nil]; 

} 
} 

- (void)leaderboardViewControllerDidFinish:(GKLeaderboardViewController *)viewController 
{ 
[leaderboardViewController dismissViewControllerAnimated:YES completion:nil]; 
[viewController release]; 
} 

답변

1

OpenGL 애니메이션을 중지하고 다시 시작하십시오.

-(void)showLeaderboard 
{ 
     [[CCDirector sharedDirector] stopAnimation]; 

     GKLeaderboardViewController *leaderboardViewController = [[[GKLeaderboardViewController alloc] init] autorelease]; 
     leaderboardViewController.leaderboardDelegate = self; 

     AppController *app=(AppController*)[UIApplication sharedApplication].delegate; 
     [app.navController presentModalViewController:leaderboardViewController animated:YES]; 
} 


-(void) leaderboardViewControllerDidFinish:(GKLeaderboardViewController *)viewController 
{ 
    AppController *app=(AppController*)[UIApplication sharedApplication].delegate; 
    [app.navController dismissModalViewControllerAnimated:YES]; 

    [[CCDirector sharedDirector] startAnimation]; 
} 
+0

내가 AppController가 아닌 AppDelegate와 함께 Cocos를 계속 사용한다면 무엇을 수정해야하는지 알고 있습니까? 감사합니다 – PCoder123

+0

2.0 미만의 cocos2d 버전? AppDelegate 및 viewController를 사용하십시오. – Guru

+0

감사합니다! 그 일했다! – PCoder123