2

ARCで、これをどのように適切に解決しますか?

問題は、WSDL2OBJCで作成されたコードです。他のすべての問題を修正しましたが、これではわかりません。

if ([super respondsToSelector:@selector(initWithCoder:)] && ![self isKindOfClass:[super class]]) {
    self = [super performSelector:@selector(initWithCoder:) withObject:decoder];
} else {
    self = [super init];
}

WSDL2OBJCでは、次のようにこの問題を解決しました。

「ターゲット->ビルドフェーズ->ソースのコンパイルすべてのwsdl2objcソースに追加:-fno-obcj-arc」

しかし、これは実際にはコードの修正ではありません。WSDL2OBJCソースでARCを防ぐだけです。

4

3 に答える 3

2

このソリューションを試してください:

self = [super performSelector:NSSelectorFromString(@"initWithCoder:") withObject:aDecoder];
于 2015-05-29T05:48:15.050 に答える
0

スーパークラスを知っている場合は、この混乱を単純に削除して、適切な初期化子を直接呼び出すことはできませんか?

于 2012-04-17T07:19:34.010 に答える
0

WSDL2OBJCでARCを放棄し、コンパイラフラグを使用することにしました

于 2012-05-22T13:18:08.677 に答える