Предупреждения в Objective c с вызовом метода - PullRequest
0 голосов
/ 04 мая 2011

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

Я получаю 'DebugZoneLayer' может не отвечать на '-getGID:tileKind ' и Инициализация делает целое число из указателя без приведения , когда я выполняю этот вызов метода:

int blocksCollidableGID  = [debugZoneLayer getGID:[NSValue valueWithCGPoint:(NSString*)tileCoord] tileKind:@"blocksCollidable"];

, в котором я пробовал все различные комбинации приведения этих типов значений.

В DebugZoneLayer.h у меня есть:

-(int) getGID:(CGPoint)tileCoord withTileKind:(NSString*)tileKind;

Спасибо

Ответы [ 4 ]

1 голос
/ 04 мая 2011

Также первый параметр не должен быть NSValue, это должен быть CGPoint.

1 голос
/ 04 мая 2011

septi правильно с опечаткой селектора, но, похоже, есть и дополнительные проблемы.

  • -valueWithCGPoint: берет, ну, CGPoint. Приведение к (NSString *) неверно. Что такое tileCoord?
  • Первый параметр объявлен как принимающий CGPoint, а не NSValue, поэтому, во-первых, бокс не кажется необходимым.
1 голос
/ 04 мая 2011

Очевидно, это должно быть с TileKind вместо tileKind.

Редактировать: я имею в виду эту строку; -)

int blocksCollidableGID  = [debugZoneLayer getGID:[NSValue valueWithCGPoint:(NSString*)tileCoord] withTileKind:@"blocksCollidable"];

Редактировать:

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

Вы упомянули, что tileCoord - это CGPoint.Так что в любом случае абсолютно нет необходимости разыгрывать или преобразовывать его.Попробуйте эту строку кода:

int blocksCollidableGID  = [debugZoneLayer getGID:tileCoord withTileKind:@"blocksCollidable"];

и посмотрите, есть ли другие ошибки.

0 голосов
/ 05 мая 2011

Нет литья, необходимого для tileCoord или tileKind

int blocksCollidableGID = [debugZoneLayer getGID: tileCoord withTileKind: @ "blocksCollidable"];

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...