2009-09-30 2 views
15

Я только что создал новый проект Cocoa на XCode 3.2. Я запускаю его в Snow Leopard.Здание для 10.5 в Xcode 3.2 (на Snow Leopard) error

Когда я построить его на 10.6 он работает нормально, но если я изменить активный SDK до 10,5 Я получаю эту ошибку:

cannot find protocol declaration for 'NSApplicationDelegate' 

ответ

33

NSApplicationDelegate является new protocol as of 10.6. Вы получаете ошибку (я предполагаю), потому что ваш делегат приложения реализует этот протокол. Я не уверен, если это лучшая практика по этому вопросу, но вы можете просто рассмотреть вопрос об использовании препроцессора, чтобы помочь вам:

#if (MAC_OS_X_VERSION_MAX_ALLOWED <= MAC_OS_X_VERSION_10_5) 
@interface MyAppDelegate : NSObject 
#else 
@interface MyAppDelegate : NSObject <NSApplicationDelegate> 
#endif 
+0

Если я скомпилировать 10,5 Я получаю сообщение об ошибке появляется в Xcode – Jorge

+0

Ха, мой Плохо. MAC_OS_X_VERSION_10_6 не определяется на 10.5, поэтому мы должны придерживаться логики с точки зрения 10.5. Исправлено в ответе. – nall

+3

Thanx это сработало для меня. Хорхе, ты должен принять этот ответ! –

 Смежные вопросы

  • Нет связанных вопросов^_^