0

「インターフェイス宣言'someEnumeration'、'interfaceName'のスーパークラスが見つかりません」エラーを解決するにはどうすればよいですか?

問題を再現する手順は何ですか?

  1. Wsdl2ObjCのコンパイル

  2. groupwise.wsdlファイルをターゲットにする

  3. 「.h」+「。m」などの出力csourceコードの無効なファイル名とソースファイル内のオブジェクトの修正

  4. コードでさらに使用される前に、@ interfaceの1つを上に移動します!

期待される出力はどれくらいですか?何かが機能している

代わりに何が見えますか?

33エラー。クラスによるtypedef列挙型オブジェクトの3つの類似した継承からのみ「継承」されます。すべてのエラーは典型的なものです。

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 { ...

ここで、「「types_StatusTrackingOptions」のインターフェイス宣言が見つかりません。「types_StatusTracking」のスーパークラスです」というエラーが発生します。

使用している製品のバージョンは何ですか?どのオペレーティングシステムで?Wsdl2ObjC-rev 168、OS-Mac OS X 10.6.2、iPhone SDK-3.2、Simulator-v。3.1.2-3.1.3、wsdl-GroupWise v.8用、NDKリリース2008-12-23、wsdlおよびxsdファイルが添付されます。

PS GroupWise.wsdl + .xsdファイルは、 http: //code.google.com/p/wsdl2objc/issues/detail?id=99からダウンロードできます。

4

1 に答える 1

1

あなた(彼ら?)は何をしようとしていますか?から継承することはできませんenum。継承できるのはObjective-Cクラスのみです。

おそらく、継承ではなく構成が必要ですか?

@interface types_StatusTracking : NSObject {
   types_StatusTrackingOptions options;
}
@property (assign) types_StatusTrackingOptions options;
...
@end
于 2010-06-07T11:29:16.217 に答える