【问题标题】:How to Remove All markers from googlemap not mapview.clear (ios objective-c)如何从 googlemap 中删除所有标记而不是 mapview.clear (ios objective-c)
【发布时间】:2018-03-29 22:34:50
【问题描述】:

我正在尝试从谷歌地图中删除现有的所有标记,我们可以通过map.clear 来完成,但我不想删除地图上的所有内容(折线、多边形),我只想删除标记​​p>

我正在根据数组计数创建标记

-(void)annotationCreationForCoordinatesOfArray:(NSMutableArray *)array
{
     for (int i=0; i<array.count; i++)
    {
        CLLocationCoordinate2D position = CLLocationCoordinate2DMake([[[array objectAtIndex:i] objectForKey:@"latitude"] doubleValue], [[[array objectAtIndex:i] objectForKey:@"longitude"] doubleValue]);

        mark = [GMSMarker markerWithPosition:position];

        NSString *annoNumber = [NSString stringWithFormat:@"%i",i];
        mark.title = annoNumber;
        mark.map = _mapView;
        mark.tracksViewChanges = YES;
        mark.draggable = YES;
        mark.icon = [UIImage imageNamed:@"Mappin.png"];

    }
}

【问题讨论】:

  • 制作您的特定标记nil
  • 如果我设置 marker=nil,或者 marker.map=nil 唯一的最后一个标记被删除
  • 不,为此您必须为每个标记设置 ID,然后获取该特定标记,然后将其归零。

标签: ios google-maps google-maps-markers


【解决方案1】:

试试这个代码,它对我有用。

创建全局数组

NSMutableArray *removalMarkerArray;

现在在全局数组中添加所有标记

   removalMarkerArray=[[NSMutableArray alloc]init];

 -(void)annotationCreationForCoordinatesOfArray:(NSMutableArray *)array{

    for (int i=0; i<array.count; i++){

    CLLocationCoordinate2D position = CLLocationCoordinate2DMake([[[array objectAtIndex:i] objectForKey:@"latitude"] doubleValue], [[[array objectAtIndex:i] objectForKey:@"longitude"] doubleValue]);

    mark = [GMSMarker markerWithPosition:position];

    NSString *annoNumber = [NSString stringWithFormat:@"%i",i];
    mark.title = annoNumber;
    mark.map = _mapView;
    mark.tracksViewChanges = YES;
    mark.draggable = YES;
    mark.icon = [UIImage imageNamed:@"Mappin.png"];

    [removalMarkerArray addObject:mark];

     }
  }

然后你要清除所有标记的地方

  for (GMSMarker *marker in removalMarkerArray ){
        marker.map = nil;
   }

【讨论】:

    猜你喜欢
    • 2012-11-21
    • 1970-01-01
    • 1970-01-01
    • 2015-05-03
    • 1970-01-01
    • 2019-11-27
    • 2017-04-03
    • 2022-10-20
    • 2010-12-24
    相关资源
    最近更新 更多