2016-11-22 28 views
0

我一直在使用osmbonus庫和osmdroid庫教程。我已經下載了我的SD卡中的KML和json文件,現在我想列出列表視圖中的所有信息。如何使用KML或geojson在列表視圖中顯示?

,如:
名稱=某某學校
市容=學校
地址:街道= ABC
OPENING_HOURS:蘇神父22:00-04:00

KML文件是格式:

<Placemark id="mId"> 
<Point> 
<coordinates>85.0960383,27.6345759,0.0 </coordinates> 
</Point> 
<ExtendedData> 
<Data name="addr:postcode"><value>44100</value></Data> 
<Data name="name:en"><value>Palung Modern English Secondary School</value></Data> 
<Data name="amenity"><value>school</value></Data> 
<Data name="addr:street"><value>Tribhuvan Highway</value></Data> 
<Data name="opening_hours"><value>Su-Fr 22:00-04:00</value></Data> 
</ExtendedData> 
</Placemark> 

我用這樣的代碼來存儲文件

//file at storage/sdcard0/kml 
      mKmlDocument.saveAsKML(mKmlDocument.getDefaultPathForAndroid("my_route.kml")); 
// Loading and saving of GeoJSON content 
      mKmlDocument.saveAsGeoJSON(mKmlDocument.getDefaultPathForAndroid("my_route.json")); 
+0

你到目前爲止嘗試過什麼?讀入KML文件並填充列表視圖不起作用? – scai

回答

1

假設您知道Android ListView機制:

訪問地標擴展數據。您的地標是您的KML文件中的獨特功能,所以:

KmlPlacemark placemark = (KmlPlacemark)mKmlDocument.mKmlRoot.mItems.get(0); 
HashMap<String, String> extendedData = placemark.mExtendedData; 

然後分析它extendedData(見KmlFeature.getExtendedDataAsText源代碼,如果你需要一個例子),並填充你的ListView。

相關問題