2016-09-19 62 views
0

我查看了幾個其他不同的問題發佈了同樣的問題,但他們都沒有幫助回答我的問題,因爲我用這個座標。我最近升級到Swift3,我得到這個錯誤「語境類型AnyObject不能用於與數組文本上下文類型AnyObject不能用於座標的數組文字

因此,這是怎樣的代碼看起來像在這裏我聲明我的變量我的座標

var coordinates: [AnyObject]! 

這是發生錯誤的下一個代碼,我將用x替換數字。我使用的經度和緯度

coordinates = [[xx.xxxxxx, -xxx.xxxxxx],[xx.xxxxxx, -xxx.xxxxxx],[xx.xxxxxx, -xxx.xxxxxx]] 

,我把它叫做是通過使用循環的方式,我不認爲導致任何問題,但我只是將它張貼以防萬一

for i in 0...2 
    { 
     let coordinate = coordinates[i]} 

問題通過實施

var coordinates: [[Double]]! 
+0

是否有某些原因,您不能將座標聲明爲'var coordinates:[[Float]]!'或'var coordinates:[[Double]]!'? –

+0

爲什麼使用'[AnyObject]!'類型的二維數組?編譯器不知道內部數組應該是什麼類型。無論如何,更合適的數據結構將是一系列結構。 – Hamish

+0

實際的鏈接器錯誤是什麼? –

回答

0

解決只是改變: -

import MapKit 


class yourController : ...{ 

var coordinates: [AnyObject]! 

var coordinates = [CLLocationCoordinate2D]() 

要僅爲特定索引訪問特定latlong: -

coordinates[your_index].latitude // Latitude 

coordinates[your_index].longitude //Longitude 

CLLocationCoordinate2D是一個結構,更易於擴展,比數組訪問。

+0

避免延長你的問題的時候一個人回答,SO在一天內沒有限制發佈兩個問題。接受這個答案,如果它解決了你的問題。:)快樂編碼 – Dravidian

+0

有更多的問題,我有更多的問題實施不同的部分。請閱讀帖子 –

相關問題