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
метод KMLParser и добавьте новый обработчик для IconStyle
. Вам придется расширить класс KMLStyle
, добавив поддержку значков меток. Затем, когда у вас есть URL-адрес значка, должно быть легко передать его в mapkit вместо значка по умолчанию. Удачи!