MKMapView - 从Web服务返回的信息中呈现用户

时间:2014-01-07 18:19:21

标签: ios web-services asynchronous location

我正在使用Web服务来检索用户标签和注释详细信息。加载视图时将调用Web服务。检索完信息后,我现在掌握了详细信息,并准备好用它们更新地图。我想用新标题和自定义引脚类型更新用户。

与此同时,由于服务是异步的,因此地图已经渲染,因此用户已经用蓝色脉冲点表示。换句话说,在地图渲染时,Web服务尚未返回,因此新信息不可用。

问题:

  • 阻止用户初次呈现
  • 在收到信息时更改用户的标题和引脚类型

我知道没有办法让地图按需刷新,而是删除和添加注释。但它不会让我用MKUserLocation做到这一点。所以另外一个问题是:

  • 如果没有注释,只有用户?
  • ,地图会如何更新?

我已经对SO进行了审核,但这个具体问题似乎没有任何答案。当然,如果应用程序中的细节已经硬编码,没问题,但事实并非如此。

1 个答案:

答案 0 :(得分:1)

您可以通过setShowUserLocation:NO或IB中的viewDidLoad禁用它,然后当Web服务返回A时设置为YES,或者B)将用户添加为常规注释。会推荐B,那么你不需要在回调中编写额外的用户处理代码。一旦你去定制别针,你就会失去蓝色的脉冲环,所以不妨让自己更轻松。