【问题标题】:Assign GMS Marker to NSMutableArray Objective-C将 GMS 标记分配给 NSMutableArray Objective-C
【发布时间】:2017-04-22 14:23:43
【问题描述】:

我已经使用“for”案例成功地显示了来自网络服务的所有标记,这是我的方法

- (void)setMarker{
double  double_lat;
double  double_long;

for(int i=0;i<[ObjekwisataArray count];i++)
{
    double_lat = [[[ObjekwisataArray objectAtIndex:i]valueForKey:@"latitude"] doubleValue];
    double_long = [[[ObjekwisataArray objectAtIndex:i]valueForKey:@"longitude"] doubleValue];
    GMSMarker *mkr = [[GMSMarker alloc] init];
    if (double_lat !=0 && double_long!=0)
    {
        [mkr setPosition:CLLocationCoordinate2DMake(double_lat, double_long)];
        [mkr setTitle:[[ObjekwisataArray objectAtIndex:i] valueForKey:@"nama"]];
        [mkr setSnippet:@"Kota Ambon"];
        [mkr setMap:NearbyView];
    }

}}

现在我想问的是,当调用所有纬度和经度时,如何将我的“mkr”变量(GMSMarker)存储到 NSMutableArray 值,我希望我的标记存储为 NSMutableArray 类型,这样我就可以我想随时打电话。谢谢你的回答

【问题讨论】:

    标签: ios objective-c google-maps google-maps-api-3


    【解决方案1】:
    NSMutableArray *arr = [NSMutableArray new];
    
    for(int i=0;i<[ObjekwisataArray count];i++)
    {
    double_lat = [[[ObjekwisataArray objectAtIndex:i]valueForKey:@"latitude"] doubleValue];
    double_long = [[[ObjekwisataArray objectAtIndex:i]valueForKey:@"longitude"] doubleValue];
    GMSMarker *mkr = [[GMSMarker alloc] init];
    if (double_lat !=0 && double_long!=0)
    {
        [mkr setPosition:CLLocationCoordinate2DMake(double_lat, double_long)];
        [mkr setTitle:[[ObjekwisataArray objectAtIndex:i] valueForKey:@"nama"]];
        [mkr setSnippet:@"Kota Ambon"];
        [mkr setMap:NearbyView];
        [arr addObject:mkr];
     }
    }}
    

    更新了!

    【讨论】:

    • 是的,是的,这就是我的意思,我应该把代码放在哪里?在所有标记被调用并保存在“mkr”值之后?在我的“for”案例中还是在它之外?谢谢先生
    猜你喜欢
    • 1970-01-01
    • 2017-05-19
    • 1970-01-01
    • 1970-01-01
    • 2011-12-13
    • 2013-06-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多