0

データの逆ジオコーディングが終了したときにのみカスタムinitメソッドを返すにはどうすればよいですか?

これを行う方法さえありますか?私は、completionHandlerの最後に「returnself」を追加する必要があると想定しましたが、これは、initメソッドを返すのとは対照的に、initメソッドに戻るだけです。

すべての助けに感謝し、事前に感謝します!:)

4

1 に答える 1

0

メソッドセレクターをデータとして扱うことができます

SEL    theSelector = @selector(initWithStuff:);

theSelectorは、他のプリミティブ データ型と同じように渡すことができるようになりました。

次のように、ARC を使用してperformSelector:でinit メソッド セレクターを呼び出します。

id result = [target performSelector:theSelector];

コンパイラは戻り値を解放する必要があることを認識していないため、少し注意が必要です。代わりにクラスメソッドを使用できる場合は、コンパイラが与える警告に耐えるか、そのコードの一部をラップすることができます

#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Warc-performSelector-leaks"
id result = [[Target class] performSelector:theSelector];
#pragma clang diagnostic pop
于 2012-09-04T00:14:59.867 に答える