Как вы вызываете функцию, используя self в cocos2d 0.99.5 - PullRequest
0 голосов
/ 28 февраля 2011

Да, я начинающий. Я читаю книгу по развитию cocos2d. Автор написал эту книгу, используя 0.99.4. В книге говорится, что нужно вызывать функцию, которая создает спрайты и добавляет их в массив, используя следующий код: [self initSpiders] ;. Но когда я запускаю это, я получаю предупреждение, которое гласит: «Gamescene может не отвечать на« resetSpiders ». Я предполагаю, что есть обновленный способ сделать это в более новой версии cocos2d. Если есть, я был бы благодарен, если бы кто-то мог объяснить правильный способ сделать это. Если это правильный путь, то что я делаю не так? Заранее спасибо.

1 Ответ

0 голосов
/ 28 февраля 2011

В target-c объект сообщает сообщению что-то сделать:

[someObject doSomething];

Или с аргументом:

[someObject doSomethingWithArgument:someValue];

В сообщении, которое вы получаете от компилятора, говорится, что объект (например, "someObject") не понимает, что вы говорите ему делать (doSomething).

Чтобы отключить предупреждение компилятора, проверьте следующее:

  1. Вы # включили заголовочный файл класса, экземпляром которого является ваш "someObject"?
  2. Имеет ли этот заголовочный файл метод, который вы вызываете? (включая аргументы?)

Если вы вызываете метод, который вы написали, убедитесь, что вы поместили этот метод в заголовочный файл. Если вы вызываете метод, который кто-то написал или является частью ОС; убедитесь, что вы включили заголовочный файл, затем, возможно, найдите метод в заголовочном файле и скопируйте / вставьте его в свой код. Это обеспечит получение подписи метода EXACT. Эти два не одинаковы: [self generateSprites]; // обратите внимание на Капитолий S [сам порождает приты]; // имена методов чувствительны к регистру

Если вам нужен лучший ответ, вам нужно опубликовать часть своего кода, чтобы люди могли видеть, что вы делаете неправильно.

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