2017-02-15 75 views
0

我将用户的经度和纬度上传到firebase下两个不同的键值对下,然后在mapView上进行快照并获得经度和纬度。我必须将它们存储为字符串,但是我将它们更改为双倍并将它们存储在二维数组中。然后我需要将它存储在CLLocationCoordinate2D数组中。之后,我需要在MapView上绘制这些图。我遇到了如何将它们转换为CLLocationCoordinate2D数组,然后绘制这些位置以便它们都显示在地图上的问题。CLLocationCoordinate2D阵列双打

我的二维数组是这样的:bookLoc[[121.09900,56.5999],[123.94949, 45.0099]] //etc there are more points but I think this gets the point accoss.

我不知道如何给CLLocationCoordinate2DMake赋予多重坐标。谢谢

+0

为什么你有2个元素数组的数组摆在首位?这是很多内存分配开销...... – Alexander

+0

我必须将经度和纬度坐标存储为Firebase的两个不同的键值对,所以我必须将它们存储在两个单独的数组中。然后我结合他们。如果你知道更好的办法,那么请尽量让我知道。 –

回答

0

使用map

let arr = [[121.09900,56.5999], [123.94949, 45.0099], [...] ] 
let coordinates = arr.map { CLLocationCoordinate2D(latitude: $0[0], longitude: $0[1]) } 
+0

那么我会如何MKCoordinateRegion和MKCoordinateRegionMake和CLLocation2DMake? –

+0

你不是正确地解决你的问题。你有一系列的双打。现在你想从中赚钱吗? –

+0

我想使用包含在双精度数组中的坐标在地图上添加注释。所以或多或少我想拥有一组注释,以便我可以将它们放在地图上。 –