Ios 如何找到MGLPolyline中的最后一个坐标?

Ios 如何找到MGLPolyline中的最后一个坐标?,ios,arrays,swift,mapbox,Ios,Arrays,Swift,Mapbox,我有一些代码,应该可以找到MGLPOLYINE中的第一个和最后一个坐标。目前,我能够找到第一个值和中间值,但无法找到最后一个值。下面是我的密码。在这里,你可以看到我是如何找到第一个和中间的坐标的 var arrayOfCoordinates = [CLLocationCoordinate2D]() var arrayOfPolylines = [MGLPolyline]() for value in arrayOfPolylines { mapView.addAnnotat

我有一些代码,应该可以找到MGLPOLYINE中的第一个和最后一个坐标。目前,我能够找到第一个值和中间值,但无法找到最后一个值。下面是我的密码。在这里,你可以看到我是如何找到第一个和中间的坐标的

var arrayOfCoordinates = [CLLocationCoordinate2D]()
var arrayOfPolylines = [MGLPolyline]()


 for value in arrayOfPolylines {
        mapView.addAnnotation(value)

        //This is for the first and last snakehead and tail stuff
        let lastLoc = value.coordinate.latitude
        let newLoc = value.coordinate.longitude

        let firstCor = value.coordinates[0].latitude
        let secondCor = value.coordinates[0].longitude
       ...
我尝试了以下方法来查找值:

value.coordinates[value.coordinates.count] //This does not compile as it says 
“UnsafemeutablePointer”类型的值没有成员“count”


所以我的问题是如何找到最后一个值(坐标)?

好吧,您的代码对此不起作用。使用当前代码,您将无法轻松找到最后一个值,您必须执行一个数学过程来确定坐标数,然后检查for循环是否经过足够的时间到达最后一个坐标

var arrayOfCoordinates = [CLLocationCoordinate2D]()
var arrayOfPolylines = [MGLPolyline]()


 for value in arrayOfPolylines {
        mapView.addAnnotation(value)

        //This is for the first and last snakehead and tail stuff
        let lastLoc = value.coordinate.latitude
        let newLoc = value.coordinate.longitude

        let firstCor = value.coordinates[0].latitude
        let secondCor = value.coordinates[0].longitude
       ...
但更简单的方法是创建
CLLocation
数组,然后您可以使用以下代码访问该数组:

            let lastLoc = self.arrayOfLocationList.last //last value here
            let newLoc = self.arrayOfLocationList.first

请显示更多代码。具体来说,
arrayOfPolylines
是如何声明的?请参见编辑@MagnasUser123已经回答了您的问题,但重要的是要了解阵列是基于零的。这意味着第一个元素是索引0,第二个元素是索引1,等等。因此,当您使用
数组时,最后一个元素是index
array.count-1
。count
您试图访问数组末尾以外的元素。是的,我知道,但这并不重要,因为这样做是无效的。count@Magnas