Cocos2d думает, что я программирую для Mac; но не я

Я только начинаю с cocos2d и пытаюсь установить isTouchEnabled в методе инициализации моего слоя. Но в поле автоматического ввода появляется только версия для Mac (isMouseEnabled и isKeyboardEnabled, а не касание и акселерометр)

Все, что у меня есть, это запустить новый проект из шаблона cocos2d (без дополнений, таких как box2d), и ничего не изменить.

Я пробовал вручную набирать isTouchEnabled, но он не собирался; говоря, что сеттер не существует.

По какой-то причине он думает, что я программирую для Mac, хотя я также поместил этот код (который cocos2d использует для дифференциации) в методе инициализации слоя, и iphone было написано в консоли:

#ifdef __IPHONE_OS_VERSION_MAX_ALLOWED
    NSLog(@"iphone");
#elif __MAC_OS_X_VERSION_MAX_ALLOWED
NSLog(@"mac");  
#endif

person Jonathan.    schedule 21.02.2011    source источник


Ответы (2)


Я помню, когда я устанавливал фреймворк cocos2d, мне приходилось выбирать между версиями для Mac и iOS.

http://www.cocos2d-iphone.org/wiki/doku.php/prog_guide:lesson_1._install_test

cd cocos2d-iphone
./install-templates.sh
person Ospho    schedule 21.02.2011
comment
Я запустил это в терминале, но я никогда не видел выбора между Mac и iOS, я даже не хочу иметь ничего общего с Mac в своем проекте, особенно когда загрузка называлась cocos2d- iphone. - person Jonathan.; 22.02.2011

Это потому, что они добавили поддержку Mac, и по какой-то причине он не видит iphone, только версию для Mac. Он работает правильно, если вы переключитесь на устройство из симулятора.

person Jonathan.    schedule 23.02.2011