2011-03-09 10 views
2

我正在開發一個iOS應用程序,該應用程序通過MKMapView顯示KML數據。擴展iOS KMLViewer示例以處理KML NetworkLink元素

蘋果的KMLViewer示例應用程序讓我開始了。不幸的是,我使用的KML數據在很大程度上依賴於通過NetworkLinkLinkhref KML元素鏈接的文件,而KMLViewer的解析器不處理這些數據。

我大概可以弄清楚如何添加這種支持,但是在我走下那條路之前,我想知道是否有其他人已經完成了這項工作,或者如果有比KMLViewer更好的起點。

我看過Simple KML,但它似乎也不支持NetworkLink

回答

3

這裏是我的調查,如何去:

  1. 我第一次延長KMLViewer樣本來支持我所需要的其他元素。這個示例並不適合這種情況:它不像SAX風格的解析器那樣組織,如果你想添加更多的東西,那麼簡單的狀態機真的需要徹底檢修。
  2. 接下來我嘗試了Simple KML庫。這很容易使用,但是需要3500毫秒來解析我需要解析的KML文件,這比我認爲可以接受的時間至少要多3000毫秒。另外,簡單的KML不支持我需要的所有元素和屬性,所以如果我想使用它,我需要擴展它。
  3. 因此,我最終只使用了TBXML,這很容易使用,並且在不到100毫秒的時間內解析了文件。
+0

你介意幫助我嗎?http://stackoverflow.com/questions/39335869/trying-to-parse-groundoverlay-inside-kml-file-in-swift。我真的需要幫助就像你的問題。 – 2016-09-05 18:55:07

+0

@ 6245Htarwara它看起來你的問題被刪除。 FWIW,我已經有幾年不需要使用KML了,所以我對它不再瞭解太多。 – 2016-09-06 14:00:55

+0

我現在可以解析KML,就像你的建議一樣。但是,我用AEXML代替了.Parse KML,並得到裏面的圖像,並在我的MKMapView上插入GroundOverlay樣式。感謝您的幫助。我解決了它,所以我刪除了題。 – 2016-09-06 14:06:53