在我的GIS应用程序中,我想为我的引脚/位置提供自定义图标。事实上,我想利用链接在kml中的图标(我从该kml文件中获得占位符)。如何从kml文件"读取"这些信息?我正在使用苹果的KMLViewer。kml:的一个例子
<Placemark>
<name>ATM</name>
<description>.........Info..........</description><Style>
<IconStyle>
<Icon>
<href>http://www.*****.com/images/categories/atm.png</href>
</Icon>
</IconStyle>
</Style><Point><coordinates>19.8167932033539,41.3254571132609</coordinates></Point></Placemark>
KMLViewer使用NSXMLParser
来解析KML文件,因为它是一种有效的格式化XML格式。首先研究了NSXMLParser
及其委托从XML中提取数据的方法。KMLViewer在KMLParser.m中也能做到这一点,但不实现IconStyle
元素的保存。然而,扩展应该不是很困难(也是一项很好的研究!)
- (void)parser:(NSXMLParser *)parser didStartElement:(NSString *)elementName
namespaceURI:(NSString *)namespaceURI
qualifiedName:(NSString *)qName
attributes:(NSDictionary *)attributeDict
方法,并为CCD_ 4添加一个新的处理程序。您必须扩展KMLStyle
类,添加对占位符图标的支持。然后,当你得到图标的url时,应该可以很容易地将其提供给mapkit,而不是默认的图标。祝你好运