0

完成反向地理编码数据后,如何仅返回自定义 init 方法?

有没有办法做到这一点?我以为我应该在completionHandler的末尾添加'return self',但这只是返回到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 回答