2009-09-30 12 views
15

Ich habe gerade ein neues Cocoa-Projekt auf XCode 3.2 erstellt. Ich betreibe es in Snow Leopard.Erstellen für 10.5 in Xcode 3.2 (auf Snow Leopard) Fehler

Als ich es für 10,6 bauen es funktioniert gut, aber wenn ich das aktive SDK auf 10,5 ändern bekomme ich diesen Fehler:

cannot find protocol declaration for 'NSApplicationDelegate' 

Antwort

33

NSApplicationDelegate ist ein new protocol as of 10.6. Sie erhalten den Fehler (ich vermute), weil Ihr Anwendungsdelegat dieses Protokoll implementiert. Ich bin mir nicht sicher, ob dies die beste Praxis zu diesem Thema ist, aber Sie können nur betrachten den Präprozessor mit Ihnen helfen:

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

Wenn ich für 10.5 kompilieren Ich bin immer gleiche Fehlermeldung in Xcode – Jorge

+0

Ha, mein Schlecht. MAC_OS_X_VERSION_10_6 ist nicht in 10.5 definiert, also müssen wir die Logik in 10.5 beibehalten. In der Antwort behoben. – nall

+3

Danke das funktionierte für mich. Jorge, du musst diese Antwort akzeptieren! –