Я надеялся, что кто-то сможет ответить на мой вопрос.
В моем приложении у меня есть кнопка, которую вы можете нажать, чтобы перейти к таблице лидеров, которую я создал. В среде «песочницы» при первом нажатии этой кнопки пользователю предлагается войти в систему — с существующей учетной записью или с новой учетной записью.
Если пользователь нажмет на использование существующей учетной записи после проверки своего имени пользователя, пароля, отображаемого имени GameCenter и т. д., когда экран закроется, чтобы вернуться к экрану с кнопкой таблицы лидеров — ни одна из кнопок теперь не будет реагировать. Пользователь вынужден выйти из приложения (и экземпляра через двойной щелчок кнопки «Домой») и снова открыть приложение, где теперь он может играть как обычно и даже без проблем нажимать на таблицу лидеров.
Мне было интересно, почему это так, и единственная подсказка, которая у меня есть, - это экран вывода в Xcode, который говорит во время работы:
ClubHistory[4989:707] Unbalanced calls to begin/end appearance transitions for <GKModalRootViewController: 0x1bcd90>.
Из поиска других вопросов кажется, что это может означать столкновение открывающихся/закрывающихся представлений. Но я не очень понимаю, где я должен реализовать это.
Часть кода, которая открывает таблицу лидеров в первую очередь:
-(void)leaderboardViewControllerDidFinish:(GKLeaderboardViewController *)viewController
{
[self dismissModalViewControllerAnimated:YES];
}
-(IBAction ) showLeaderboard
{
GKLeaderboardViewController *leaderboardController = [[GKLeaderboardViewController alloc]init];
if (leaderboardController != NULL)
{
leaderboardController.category = self.currentLeaderBoard;
leaderboardController.timeScope = GKLeaderboardTimeScopeWeek;
leaderboardController.leaderboardDelegate = self;
[self presentModalViewController: leaderboardController animated:YES];
}
}
Возможно, изменение, которое мне нужно сделать, сделано здесь.
Я искал в Интернете похожие проблемы, но безрезультатно. Кто-нибудь знает, как я могу решить эту проблему?
Всем спасибо,
Энди.
///// Быстрое редактирование: Просто чтобы уточнить, у меня включен ARC для моего приложения.