首页 文章

ios 6 - 一个允许用户在街道上创建 Map 注释的应用程序返回具有相同坐标的多个注释

提问于
浏览
0

我正在 Build 一个应用程序,让用户在他周围走动时 Build 自己的 Map 注释 . 我正在测试这个 .

一切顺利我看到当我出现在街上时,我创建了 Map 注释,它们立即显示在设备 Map 上 . 问题是有时候我发现在创建多个之后它们都会显示为单个引脚 . 即它们具有相同的纬度和经度,但它们具有不同的 Headers 和副 Headers . 这意味着程序实际上是创建单独的对象,但为它们分配相同的坐标 .

我检查以确保在创建新对象时程序不会重写旧对象 .

似乎CLlOcation管理器提供相同的坐标 . 我不知道如何处理这个问题 .

CLLocation Manager可能提供错误的坐标吗?

谢谢

这是我在cllocationmanager实例中实现的代码

-(void)locationManager:(CLLocationManager*)_manager
   didUpdateToLocation:(CLLocation *)newLocation
      fromLocation:(CLLocation *)oldLocation
 {
   NSLog(@"%s %d", __PRETTY_FUNCTION__, __LINE__);
   self.userLocation = newLocation;
   NSLog(@"USer location latitude = %.4f", self.userLocation.coordinate.latitude );
   NSLog(@"USer location longitude = %.4f", self.userLocation.coordinate.longitude);
   if (self.userLocation)
   {
        [_locMgr stopUpdatingLocation];
    }

   }

编辑

我想只是具体一点,我想了解的是如何获得我的应用程序中用户位置的更新读数,这与蓝点不断激励用户位置的值相同,以便每当用户移动时移动 . 我似乎无法从CLLocation经理那里得到那些读物 .

谢谢

1 回答

  • 3

    打开位置管理器时,您通常会获得一个旧读数 . 在决定使用它之前,您应该检查读数的时间戳和horizontalAccuracy .

相关问题