So beheben Sie den Fehler „@interface interfaceName:„someEnumeration“ gibt den Fehler „Schnittstelle „someEnumeration“ kann nicht gefunden werden.“
-
24-10-2019 - |
Frage
Wie kann ich "keine Schnittstellenerklärung finden", eine Superklasse des "Interfacename" -Fehlers?
Welche Schritte werden das Problem reproduzieren?
Kompilieren von Wsdl2ObjC
Ausrichtung auf die Datei „groupwise.wsdl“.
Behebung von Nicht-Valid-Dateinamen von Ausgabe CSource-Code wie ".h" + ".m" und Objekte in Quelldateien
Eines der @interfaces nach oben verschieben, BEVOR es weiter im Code verwendet wurde!
Was ist die erwartete Ausgabe?Etwas funktioniert
Was sehen Sie stattdessen?
33 Fehler.„Geerbt“ von nur 3 ähnlichen Vererbungen eines Typedef-Enum-Objekts durch eine Klasse.Alle Fehler sind typisch:
typedef enum types_StatusTrackingOptions {
types_StatusTrackingOptions_none = 0,
types_StatusTrackingOptions_None,
types_StatusTrackingOptions_Delivered,
types_StatusTrackingOptions_DeliveredAndOpened,
types_StatusTrackingOptions_All,
} types_StatusTrackingOptions;
types_StatusTrackingOptions types_StatusTrackingOptions_enumFromString(NSString *string);
NSString * types_StatusTrackingOptions_stringFromEnum(types_StatusTrackingOptions enumValue);
@interface types_StatusTracking : types_StatusTrackingOptions { ...
Und hier habe ich Fehler "Die Schnittstellenklaration für 'Typen_Statustrackingoptions', Superklasse von 'Type_Statustracking'" nicht finden.
Welche Version des Produkts verwenden Sie?Auf welchem Betriebssystem?Wsdl2ObjC – rev 168, Betriebssystem – Mac OS X 10.6.2, iPhone SDK – 3.2, Simulator – v.3.1.2 - 3.1.3, WSDL - Für GroupWise V.8, NDK wurden 2008-12-23 WSDL- und XSD -Dateien angehängt.
P.S.GroupWise.wsdl + .xsd-Dateien können heruntergeladen werden von http://code.google.com/p/wsdl2objc/issues/detail?id=99
Lösung
Was versuchst du (sie?) zu tun?Sie können nicht von einem erben enum
.Es können nur Objective-C-Klassen vererbt werden.
Vielleicht möchten Sie Komposition statt Vererbung?
@interface types_StatusTracking : NSObject {
types_StatusTrackingOptions options;
}
@property (assign) types_StatusTrackingOptions options;
...
@end