Семантическая проблема при загрузке таблицы лидеров GameCenter - PullRequest
0 голосов
/ 03 января 2012

У меня появляется предупреждающее сообщение при загрузке списков лидеров Game Center с:

GKLeaderboardViewController *leaderboardController = [[GKLeaderboardViewController alloc] init];
if (leaderboardController != nil) {
    leaderboardController.leaderboardDelegate = self;
    [self presentModalViewController:leaderboardController animated:YES];
}

В третьей строке появляется предупреждающий массаж, в котором говорится:

предупреждение: Семантическая проблема:Назначение идентификатора из несовместимого типа ViewMenuController

1008

Я понимаю сообщение, но не знаю, как его решить.Код работает нормально, но я хотел бы удалить предупреждение или найти лучший способ загрузить списки лидеров.

Заранее спасибо.

Решение:

Я сделал две модификации в ViewMenuController.h:

Добавьте этот импорт:

#import <GameKit/GameKit.h>

и измените эту строку, добавив:

@interface ViewMenuController : UIViewController <GKLeaderboardViewControllerDelegate> {

Спасибо всемза вашу помощь!

1 Ответ

1 голос
/ 03 января 2012

Лучшее предположение - когда вы устанавливаете leaderboardDelegate на себя, оно ожидает id<GKLeaderboardViewControllerDelegate>, но ваш ViewMenuController не определяет себя как соответствующий протоколу GKLeaderboardViewControllerDelegate.

Makeобязательно установите это в интерфейсе ViewMenuController.

...