【发布时间】:2011-12-25 03:38:41
【问题描述】:
我想知道如何处理这个特殊问题:
我正在创建一个地点对象,该对象使用地理纬度对进行初始化。然后我使用 iOS 地理编码器获取该坐标的地址。我想将该地址设置为我的实例变量之一。但是,这个异步调用并没有及时完成,所以当我实例化我的对象并尝试显示地址时,它还没有完成。有什么策略可以解决这个问题和类似问题?
谢谢!圣诞快乐!
【问题讨论】:
标签: iphone ios asynchronous geocoding
我想知道如何处理这个特殊问题:
我正在创建一个地点对象,该对象使用地理纬度对进行初始化。然后我使用 iOS 地理编码器获取该坐标的地址。我想将该地址设置为我的实例变量之一。但是,这个异步调用并没有及时完成,所以当我实例化我的对象并尝试显示地址时,它还没有完成。有什么策略可以解决这个问题和类似问题?
谢谢!圣诞快乐!
【问题讨论】:
标签: iphone ios asynchronous geocoding
我不想在平安夜创建一个广泛的答案,所以我现在在这里给出一个简短的答案,如果你有问题和/或想要更多细节,稍后再编辑。 em>
所有异步请求都有委托/协议方法,可以让您知道请求何时失败或成功。您应该使用 NSNotification API 并注册任何需要地址的对象,以便在对象完成请求时触发通知。当对象收到通知时,它就可以配置它的视图或它需要做的任何事情。在 requestDidFinish (或其他)方法中,您应该发送通知。
查看这篇文章了解详细信息(以及关于线程的一些很酷的东西!):http://www.raywenderlich.com/4295/multithreading-and-grand-central-dispatch-on-ios-for-beginners-tutorial
【讨论】: